Android、Java、Web系、Linux、マラソン等の備忘録

2013/09/26

Android API Level 16でアクションバーの色が変らないメモ

0 件のコメント
values-11やそれ以前からコピぺしたきたstyles.xmlを使ってると、どこがダメなんだよ!と小一時間考えてしまったのでメモしておきます。


values-14のstyle.xmlは以下の通り。基本的には、「android:」で開始されるitem名にしないと適用されないという結論です。

<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/Widget.MyTheme.ActionRed</item>
</style>

<style name="Widget.MyTheme.ActionBar.TitleTextStyle"
    parent="TextAppearance.Sherlock.Widget.ActionBar.Title">
    <item name="android:textColor">#ffffff</item>

</style>

<style name="Widget.MyTheme.ActionRed" parent="Widget.Sherlock.ActionBar">
    <item name="android:background">#FF2222</item>
    <item name="android:icon">@drawable/action_log</item>
    <item name="android:titleTextStyle">@style/Widget.MyTheme.ActionBar.TitleTextStyle</item>
</style>

※ActionBarSherlockを使っています。
※直接色の値を記述してたり、どこかの定義を参照してたり、混ざってますがサンプルということで気にしないでください。

API Level毎のActionbarの色の確認は、Eclipseの下図プルダウンのレベルを変更することで行えますが、


たぶん、マニフェストに定義している全体のテーマが反映されてて、

<application
    android:label="hoge"
    android:theme="@style/AppTheme" >

Activity個別にテーマを設定している場合はやっぱりアプリを起動するしかないのかと思っているところです。

PR
Smashing Android UI レスポンシブUIとデザインパターン

0 件のコメント :

コメントを投稿