ListViewとListActivity(2)-イベント編
今回は、ListViewとListActivityのイベント処理について、みていきます。
ListViewのイベント処理
ListViewのイベント処理の例として、ここではOnItemClickListenerとOnItemSelectedListenerの例を示します。リスト7(ListViewSample5.java)
このプログラムを実行して、リスト項目を選択したりクリックしたりしてその時のログ出力を参照してみると、どのようなタイミングでイベントが発生するかがわかります。
リスト項目を選択すると、onItemClickメソッドが呼ばれます。
リスト項目を選択した状態で、リスト項目をクリックすると、リスト項目は非選択の状態になり、 onNothingSelectedメソッドが呼ばれ、その後onItemClickメソッドが呼ばれることになります。
ListActivityのイベント処理
ListActivityにはonListItemClickメソッドが用意されており、 このメソッドをオーバ-ライトする事で、リスト項目がクリックされた時に呼び出される処理を記述できます。
以下にその例を示します。
リスト8(ListActivitySample3.java)
また、ListActivityでリスト項目・選択時の処理や、リスト項目・非選択時の処理を 記述したい場合は、以下のようにgetListViewメソッドを使ってListActivity内部にあるListViewを取得して、 このListViewオブジェクトに対してイベントリスナーを設定します。
リスト9(ListActivitySample4.java)
ListViewオブジェクトにonItemClickイベントリスナーを設定すると、ListActivityのonListItemClickメソッドをオーバライトしても、 このメソッドは呼び出されなくなります。