我有一個活動,主題如下:Theme.AppCompat.Light.DarkActionBar
。其結果是,在動作條標題和「更多」選項菜單項都是白色的,因爲我希望:更改操作欄微調主題
但是,正如你從截圖中可以看到,下拉菜單有黑色背景。我希望下拉菜單具有灰色背景(請參見下面的屏幕截圖)。
我注意到,在下拉菜單中的風格是關係到活動的總體風格,例如,如果活動樣式更改爲:Theme.AppCompat.Light
,那麼現在這個樣子:
這正是我正在尋找的風格,但正如你可能已經注意到的那樣,操作欄標題和「更多」選項現在是黑色的,這給出了這種主題有意義,但不再是我需要。
現在,我知道有幾種方法可以解決這種情況:第一種方法根本不會使用導航模式列表,因爲它已經被棄用了,另一種方法是使用Toolbar
並且有一個它內部有Spinner
,均爲風格。但在走這條路線之前,我想確保也許有一個更簡單的方法。
我想有一個從Theme.AppCompat.Light
延伸的自定義主題:
<style name="LightTheme" parent="Theme.AppCompat.Light" />
,然後用它來創建充氣下拉菜單時主題背景:
Context context = new ContextThemeWrapper(this, R.style.LightTheme);
CustomAdapter adapter = new CustomAdapter(context);
ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
actionBar.setListNavigationCallbacks(adapter, null);
但遺憾的是沒有效果。
那麼,有沒有辦法可以改變下拉菜單的風格而不影響其他組件,例如:操作欄?
完美!謝謝。 –