0

こんばんは、

誰かが私を助けてくれることを願っています。

3.0 以前のデバイスのサポート ライブラリのアクション バーを使用するアプリを開発していますが、特に 3.0 以前のデバイスではアクション バーが表示されないという問題があります。3.0 以上のデバイスを使用すると、正常に動作します。

私はこれらのチュートリアルに従いました: http://developer.android.com/guide/topics/ui/actionbar.html#Adding

したがって、アクション バーを処理する「メイン アクティビティ」は「ActionBarActivity」から拡張されます。

これらの瞬間、私のタブが疑いのない原因であることがわかりました。

私のコードは次のようになります。

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_hauptmenue_extended);

    try {
        Log.d("test", "Set ActionBar...");

        actionBar = getSupportActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        actionBar.show();

        Tab tabB = actionBar.newTab();
        tabB.setText("Home");
        tabB.setIcon(R.drawable.icon_home);
        tabB.setTabListener(new TabListener<Startmenue_activity>(this,
                "Start", Startmenue_activity.class));
        actionBar.addTab(tabB);

        Tab tabA = actionBar.newTab();
        tabA.setText("");
        tabA.setIcon(R.drawable.icon_nachrichten_sel);
        tabA.setTabListener(new TabListener<Nachrichten_activity>(this,
                "Nachrichten", Nachrichten_activity.class));
        actionBar.addTab(tabA);

        Tab tabC = actionBar.newTab();
        tabC.setText("");
        tabC.setIcon(R.drawable.icon_favoriten);
        tabC.setTabListener(new TabListener<Favoriten_activity>(this,
                "Favoriten", Favoriten_activity.class));
        actionBar.addTab(tabC);

    } catch (Exception ex) {
        HelperClassAlertDialog.zeigeInfoDialog(this, "Error...",
                ex.getMessage(), "");
    }
}

タブを追加する部分を削除すると、アクションバーが正常に動作します! しかし、「タブ」を再度追加すると、アクションバーが表示されません。しかし、エラーもありません!

誰かが私を助けてくれることを本当に願っています。:(

解決策:

次の質問と回答が役に立ちます。

android.support.v7.app.ActionBar を使用するタブ

またはこれ:

サポート ライブラリと Fragments オーバーレイ コンテンツを備えた ActionBar

4

1 に答える 1