1

http://developer.android.com/guide/topics/ui/actionbar.html#Tabsをフォローしました

次のコードを使用してTabを追加します。

Tab tab = actionBar.newTab()
            .setText(R.string.artist)
            .setTabListener(new TabListener<ArtistFragment>(
                    this, "artist", ArtistFragment.class));
    actionBar.addTab(tab);

タブを初めて表示する前に、フラグメントのコンストラクターに引数を指定するか、フラグメントインスタンスでmyInit(myVariableList)メソッドを呼び出します。

どうやってやるの?

4

1 に答える 1

6

tab.setTag()任意のオブジェクトをタブにリンクするために使用できます。に入れることができる場合はmyVariableListBundle次のようにすることで簡単な解決策を実現で​​きます-

Tab tab = actionBar.newTab()
            .setText(R.string.artist)
            .setTabListener(new TabListener<ArtistFragment>(
                    this, "artist", ArtistFragment.class));
    tab.setTag(myVariableBundle);
    actionBar.addTab(tab);

次に、onTabSelectedコールバックで、Bundleフラグメントをインスタンス化するときにを送信します-

mFragment = Fragment.instantiate(mActivity, mClass.getName(), (Bundle) tab.getTag());

Bundleその後、フラグメントのライフサイクル中にを使用してにアクセスできるようになります。getArguments()

于 2013-01-04T06:44:09.410 に答える