Ich habe eine Aktivität mit dem folgenden Thema: Theme.AppCompat.Light.DarkActionBar
. Als Ergebnis sind die ActionBar Titel und der „mehr“ Optionen Menüpunkt alle wissen, wie ich erwarten würde:Ändern Sie Aktion Spinner Thema
Aber, wie Sie aus dem Screenshot sehen können, die Drop-down Menü hat einen schwarzen Hintergrund. Ich möchte, dass das Dropdown-Menü einen grauen Hintergrund hat (siehe Screenshot unten).
ich bemerkt habe, dass der Stil der Drop-Down-Menü auf den allgemeinen Stil der Aktivität in Beziehung steht, zum Beispiel, wenn die Aktivität der Art geändert wird: Theme.AppCompat.Light
, dann wird es jetzt wie folgt aussehen:
Das ist genau die Art von Stil, die ich suche, aber wie Sie vielleicht bemerkt haben, sind die Actionbar Titel und die "mehr" Optionen jetzt schwarz, was angesichts der Art des Themas sinnvoll ist, ist aber nicht mehr was ich brauchen.
Nun, ich weiß, es gibt eine Reihe von Möglichkeiten, um mit dieser Situation umzugehen: der erste wäre, die Navigationsmodus-Liste überhaupt nicht zu verwenden, weil es bereits veraltet ist, ein anderer würde eine Toolbar
verwenden und eine haben Spinner
drin, beide styled. Aber bevor ich diesen Weg gehe, möchte ich sicherstellen, dass es vielleicht einen einfacheren Ansatz gibt.
Ich versuchte, ein eigenes Thema zu haben, die von den Theme.AppCompat.Light
erweitert:
<style name="LightTheme" parent="Theme.AppCompat.Light" />
und dann verwenden sie einen thematischen Kontext zu schaffen, wenn die Dropdown-Menü Aufpumpen:
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);
aber leider hatte keine Wirkung.
Also, gibt es eine Möglichkeit, den Stil des Dropdown-Menüs zu ändern, ohne andere Komponenten zu beeinflussen, zB: die Actionbar?
Perfect! Vielen Dank. –