将我的应用程序主题转换为Lollipop

时间:2014-10-18 21:53:54

标签: android android-5.0-lollipop

我目前正在对我的应用进行一些更改,以正确定位刚刚发布的新Android 5.0 Lollipop。

我在values-v21目录

中的styles.xml文件中有以下内容
<resources>

    <!-- Application theme. -->
    <style name="AppTheme" parent="android:Theme.Material.Light">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="android:actionBarTabTextStyle">@style/actionBarTabStyle</item>
        <item name="android:actionMenuTextColor">@color/white</item>
    </style>

    <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@color/appPrimaryColour</item>
    </style>

    <style name="actionBarTabStyle" parent="@android:style/Widget.Holo.ActionBar.TabText">
        <item name="android:textColor">@color/white</item>
    </style>

</resources>

我已经更改了主题但是我已经使用以下内容为旧Holo主题定制了我的操作栏

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">

<style name="actionBarTabStyle" parent="@android:style/Widget.Holo.ActionBar.TabText">

我无法找到Lollipop的等效内容,我已经尝试了@android:style/Widget.Material.Light.ActionBar.Solid.Inverse @android:style/Widget.Material.ActionBar.TabText"但是它说它无法找到资源。

1 个答案:

答案 0 :(得分:0)

从Theme.Material.Light.DarkActionBar延伸,它将动作栏主题设置为指向背景和前景色的Theme.Material(暗)值。此外,您应该在AppTheme中设置colorPrimary,colorPrimaryDark和colorAccent,而不是手动设置操作栏背景颜色。

<style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar">
    <item name="android:colorPrimary">@color/appPrimaryColour</item>
    <item name="android:colorPrimaryDark"> ... </item>
    <item name="android:colorAccent"> ... </item>
</style>