2

私は、昔ながらのメニューとともに、アプリのタブを備えたActionBarを使用しています。メニュー項目に関連付けられているフラグメントに入るとき、ActionBarを表示したままにしておきたいのですが、すべてのタブの選択を解除します。

私は試した:

_actionBar.selectTab(null);

しかし、それは例外をスローします。

PS違いが生じる場合は、互換性のために実際にActionBarSherlockを使用しています。

4

6 に答える 6

8

それからそれをキャッチ:)

これをテストしたところ、動作します。タブの下の青い下線が消えます。これはまさに私がやりたいことです。

       try {
          ActionBar actionbar = (ActionBar) getActionBar();
          actionbar.selectTab(null);
       } catch (Exception e) {}

プログラムの流れは続きます....それは回避策です。

于 2013-01-15T11:45:18.787 に答える
2

アクションバーのすべてのタブの選択を解除する方法

あなたはそうしない。タブは常に選択されています。

于 2012-10-14T11:02:41.087 に答える
2

タブの選択を解除できませんでした。どうなると思いますか? いずれかのタブを常に選択する必要があります。

ユーザーのことを考えてください。彼らはその行動を期待しません。

于 2012-10-14T11:16:27.840 に答える
1

私は今ネクロマンシングをしていることを知っています...しかし、うまくいく解決策を見つけました。したがって、他の誰かがこれをやろうとしている場合に備えて、どうぞ。

ダミーのタブを作成するだけで、アクション バーには追加しません。ダミーのタブを選択すると、アクション バーのタブはすべて選択されません。onTabSelectedのetc メソッドをデバッグすると、ダミーのインデックスは -1になりActionBar.TabListenerます。

注: これはActionBar.TabListenerActivity.

String tabTitles[] = {"A", "B"};
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

for (String tabName : tabTitles) {
    actionBar.addTab(actionBar.newTab().setText(tabName).setTabListener(this), false);  
}

ActionBar.Tab dummyTab = actionBar.newTab().setText("Dummy").setTabListener(this);

try{
    actionBar.selectTab(dummnyTab);
}catch(Exception e){}

私にぴったりです。

于 2014-09-03T17:27:50.123 に答える