14

ビューページャー「タブ + スワイプ」を使用しています。各フラグメントの actionBar に異なるタイトルを設定して、切り替えるとタイトルが変わるようにしたいと考えています。

いくつかのことを試してみましたが成功しませんでした。最後のタイトルだけが表示されます...切り替えても変更されません...

4

3 に答える 3

31

まず、アクティビティに を実装させOnPageChangeListenerます。

次に、 を作成するときに をViewPager使用mViewPager.setOnPageChangeListener(this)して、ページが変更されたときにアクティビティがコールバックを受け取るようにすることができます。

最後に、コールバックを実装する必要がありOnPageChangeListenerます。メソッドonPageSelected()は次のようになります。

@Override
public abstract void onPageSelected(int position) {
    setTitle(getTitleFromPosition(position));
}

他の 2 つのコールバックは空にすることができます。

于 2012-10-04T04:33:20.883 に答える
1
@Override
        public void onPageSelected(int position) {
            tabHost.setSelectedNavigationItem(position);
            if (position == 0){
                setTitle(R.string.where_is_the_bus);
            }
            else if (position == 1){
                setTitle(R.string.bus_card);
            }
            else if (position == 2){
                setTitle(R.string.favo);
            }

「簡単でしょ?」ってこんな風に作れますよね。

于 2015-04-18T15:07:16.457 に答える