1

アクティビティに 4 つのタブを実装するために ActionBarSherlock を使用しています。タブはアクション バーの下にポートレート モードで適切に表示され、スクロールも正常に機能します。横向きモードに切り替えると、タブがスピナーに配置されます (引き続き正しく機能します)。タブを横向きモード (アクション バーまたは下) で個別に表示するにはどうすればよいですか?

    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);


    ActionBar.Tab tab1 = getSupportActionBar().newTab();
    tab1.setText("TAB 1 TEXT");
    tab1.setTabListener(this);
    getSupportActionBar().addTab(tab1);

    ActionBar.Tab tab2 = getSupportActionBar().newTab();
    tab2.setText("TAB 2 TEXT");
    tab2.setTabListener(this);
    getSupportActionBar().addTab(tab2);

    ActionBar.Tab tab3 = getSupportActionBar().newTab();
    tab3.setText("TAB 3 TEXT");
    tab3.setTabListener(this);
    getSupportActionBar().addTab(tab3);

    ActionBar.Tab tab4 = getSupportActionBar().newTab();
    tab4.setText("TAB 4 TEXT");
    tab4.setTabListener(this);
    getSupportActionBar().addTab(tab4);
4

2 に答える 2

3

タブを横向きモード (アクション バーまたは下) で個別に表示するにはどうすればよいですか?

アクション バーのタブを使用しない。

表示されている動作は、ActionBarSherlock に関連付けられていません。ABS は、同じことを行う標準のアクション バーの動作を反映しています。これは仕様によるものです。それもばかげています、私見ですが、問題を提出したとき、これは意図したとおりに機能していると言われました。

ViewPagerタブを常にタブにしたい場合は、タブ付きインジケーターを使用するなど、アクション バー タブ以外の実装を使用します。

于 2013-06-19T20:47:56.497 に答える
2

これは、ActionBar のデフォルトの動作です。

https://code.google.com/p/android/issues/detail?id=24439

これを見た

https://groups.google.com/forum/#!msg/android-developers/2unF5lKfn64/iKUX7JbbOo4J

タブ ナビゲーション モードのActionBar 呼び出しsetNavigationMode()にタブを追加した後、たとえば

Tab tabDemo=mTabsAdapter.addTab(bar.newTab().setText("ABC"),.Abc.class, null,"Abc");
bar.setNavigationMode(ActionBar.Navigation_mode_tabs);

タブ表示モードでタブを表示します。うまくいくかわかりませんが、試してみてください。

ActionBar タブを使用する代わりに、タブを使用してビューを作成することもできます。などを使用する必要があると思いますViewPager

于 2013-06-19T20:49:47.890 に答える