0
我有一個活動和幾個片段的項目。片段被從活動中取代。主菜單片段不應該有操作欄,但操作欄應該保留在所有其他片段上。此外,默認的後退按鈕應該工作。我正在使用此代碼: getActivity()。getActionBar()。hide();來隱藏操作欄和顯示並隱藏片段中的操作欄
ActionBar actionBar = getActivity().getActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.show();
來顯示它。
但最讓我困惑的是主題。我應該使用哪個主題以獲得淺色背景,並且在擴展主題(如ThemeOverlay.AppCompat.ActionBar)時應該如何定義textColor,background等所有屬性?這個主題使UI變得混亂。 做這一切的最好方法是什麼?
styles.xml
<!-- Base application theme. -->
<style name="AppTheme" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="actionBarStyle">@drawable/actionbar_background</item>
</style>
感謝。
我粘貼了XML代碼,改變了顏色變量的名稱和運行應用程序。但是調用getActivity()。getActionBar()。hide();從MainMenuFragment.java中拋出NullPointerException。調試器顯示操作欄爲空。以前我在使用Theme.AppCompat.Light.DarkActionBar時遇到同樣的問題。 – X0rrify 2015-02-24 17:41:11
MainActivity是否必須擴展Activity類或ActionBarActivity類? – X0rrify 2015-02-24 17:49:00
好吧,如果你使用Theme.AppCompat(它比Theme.Holo好,所以繼續使用它),你需要調用:Android.support.v7.app.ActionBar actionBar = getSupportActionBar();嘗試使用此代碼 – 2015-02-24 18:33:57