! actionmode-listview-in-fragment (API Level 11)

Android 3.0 で ListView で複数アイテムを選択して処理を
実行するような仕組みとしてアクションモードというものがある。

ListView が Fragment 内にある場合のアクションモードのサンプル。
実装の手順は基本的に Activity の場合と同じである。

以下のメソッドを呼び出したうえで、ListView のアイテムをロングタップすると
アクションモードに入る。

* ListView#setChoiceMode(int choideMode) 
* ListView#setMultiChoiceModeListener(MultiChoiceModeListener listener) : void


MultiChoiceModeListener の以下のメソッドを実装することで
アクションモードを実現する。

* onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) : void
* onCreateActionMode(ActionMode mode, Menu menu) : boolean 
* onPrepareActionMode(ActionMode mode, Menu menu) : boolean 
* onActionItemClicked(ActionMode mode, MenuItem item) : boolean 
* onDestroyActionMode(ActionMode mode) : void

onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) : void
は各項目の選択状態が変わった際に呼ばれるコールバック。

onCreateActionMode(ActionMode mode, Menu menu) : boolean 
はこのアクションモードに入った際に呼ばれるコールバック。
ここでアクションアイテムの作成やタイトルの設定などを行う。
ここで作成したメニューアイテムはこのアクションモード専用のものとなる。

onPrepareActionMode(ActionMode mode, Menu menu) : boolean 
はこのアクションモードになる直前に呼ばれるコールバック。
onCreateActionMode() より後でり、アクションアイテムなどの
各種ビューが初期化完了している事が期待できる。

onActionItemClicked(ActionMode mode, MenuItem item) : boolean 
はアクションアイテムがクリックした際のコールバック。

onDestroyActionMode(ActionMode mode) : void
はアクションモード終了時のコールバック。
ActionMode#finish() を呼び出したり、左上の「×」をクリックして
アクションモードが終了したときに呼ばれる。


基本的な流れは、
onCreateActionMode(ActionMode mode, Menu menu) : boolean 
で処理を実行するためのアクションアイテムを menu に作成して、
アクションアイテムがクリックされた際のリスナーである
onActionItemClicked(ActionMode mode, MenuItem item) : boolean 
で実際の処理を開始する。


!! ビルドターゲット

http://maven-android-plugin-m2site.googlecode.com/svn/plugin-info.html

* mvn compile - アプリケーションのコンパイル
* mvn package - apk の作成
* mvn clean - ビルドファイルの削除
* mvn install - maven の local リポジトリにインストール

* mvn android:deploy - エミュレータやデバイスにインストール
* mvn android:generate-sources

* mvn install - アプリケーションのインストール
* mvn uninstall - アプリケーションのアンインストール


