2012年10月26日金曜日

ActionBarのタブを使用する

ActionBarのタブはFragmentの切り替えなどに使用される非常に重要な機能です。
 

NavigationMode

ActionBarでタブを表示する為には、NavigationModeをNAVIGATION_MODE_TABSにする必要があります。

NavigationModeをNAVIGATION_MODE_TABSにするにはActionBar#setNavigationModeメソッドを使用します。

1
2
3
4
// AcionBarを取得
ActionBar bar = getActionBar();
// NvigationModeをNAVIGATION_MODE_TABSに設定
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

NavigationModeにはNAVIGATION_MODE_TABS以外のものもあります。

以下にNavigationModeの一覧を記述します。

NAVIGATION_MODE_LIST リスト構造のNavigationを提供します
NAVIGATION_MODE_STANDARD 一般的なNavigationです
NAVIGATION_MODE_TABS タブのNavigationを提供します

タブを追加する

NavigationModeの設定をすれば、後はタブを追加していくだけです。

タブの追加にはActionBar#addTabメソッドを使用します。

1
bar.addTab(bar.newTab().setText("Tab1"));

上記のコードではActionBar#newTabメソッドで新しいタブを作成し、ActionBar.Tab#setTextメソッドでタブに表示するテキストを指定しています。

ActionBar.TabListener

ActionBar.TabListenerを使用すると、タブが選択された場合、タブの選択が外れた場合、タブが2度目以降に選択
された場合のそれぞれの状態に処理を実行させることができます。

以下にActionBar.TabListenerを実装した場合に必ず実装しなければならないメソッドの一覧を記述します。

onTabSelected このメソッド内に記述された処理は、タブが選択された場合に実行されます
onTabUnselected このメソッド内に記述された処理は、タブの選択が外れた場合に実行されます
onTabReselected このメソッド内に記述された処理は、タブが2度目以降に選択された場合に実行されます

ActionBar.TabListenerはActionBar#setTabListenerを使用して、ActionBarに設定します。

1
bar.setTabListener("TabListenerが実装されたクラス");

0 件のコメント:

コメントを投稿