Na prispôsobenie panela akcií používam nižšie uvedený kód v xml:
<style name="CustomActionbarTheme" parent="@style/Theme.AppCompat.Light">
<item name="actionBarTabStyle">@style/customTab</item>
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
<item name="background">@drawable/title_bar</item>
</style>
<style name="customTab" parent="@style/Widget.AppCompat.ActionBar.TabView">
<item name="android:background">@drawable/tab_bg_selector</item>
</style>
Nemám problém s používaním úrovne API 10, ale keď spustím kód na zariadeniach s vyššou úrovňou api, panely akcií sú predvolenou témou. V projekte používam podpornú knižnicu v7.
odpovede:
19 pre odpoveď č. 1Aktualizácia: od AppCompat verzia 21, všetky úrovne API teraz používajú názvy štýlov bez predpony, takže už nie je potrebné pridávať android:
Atribúty s menným menom.
Teraz zastarané: Ak používate podpornú knižnicu v7 ActionBar
, musíte svoje vlastné štýly deklarovať dvakrát, raz bez android:
predpona (pre podporu <v11 - to je to, čo máte) a raz s (pre podporu> = v11 - musíte ju pridať) podľa Styling vodítka akcie.