【问题标题】:Android: defining action bar style for a device running KitKatAndroid:为运行 KitKat 的设备定义操作栏样式
【发布时间】:2014-09-22 02:42:41
【问题描述】:

我正在为运行 4.4.2 的 Android 设备定义操作栏样式。我已经在运行 4.3 的设备上测试了这些样式,它们工作完美。然而,运行 KitKat 的手机拒绝应用该样式定义的任何规则。我在所有三个文件夹中定义了相同的主题:values、values-11 和 values-14。

<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
    <!-- Setting values in the android namespace affects API levels 14+ -->
    <item name="android:actionBarStyle">@style/MyStyledActionBar</item>
</style>

<style name="MyStyledActionBar" parent="@style/Widget.AppCompat.Light.ActionBar">
    <!-- Setting values in the android namespace affects API levels 14+ -->
    <item name="android:background">@drawable/oc_actionbar_background</item>
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>
    <item name="android:actionMenuTextAppearance">@style/MyActionBarMenuText</item>
    <item name="android:actionMenuTextColor">@style/MyActionBarMenuText</item>
    <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverFlow</item>
    <item name="android:displayOptions">showHome</item>
</style>

<style name="MyActionBarTitleText" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">#696969</item>
</style>

<style name="MyActionBarMenuText" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Menu">
    <item name="android:textColor">#696969</item>
</style>

<style name="MyActionButtonOverFlow" parent="@style/Widget.AppCompat.Light.Base.ActionButton.Overflow">
    <item name="android:src">@drawable/ic_action_search</item>
</style>

我也加了

android:theme="@style/AppTheme"

到清单应用程序标签。但样式仍未应用。然而,我设法在运行时更改了操作栏属性(更改颜色),但这不是处理此类问题的理想方式。

如果有人能就此事给我建议,我将不胜感激。

【问题讨论】:

    标签: android xml android-actionbar styles android-4.4-kitkat


    【解决方案1】:

    为了防止此类问题,我喜欢使用以下工具为我生成样式:http://jgilfelt.github.io/android-actionbarstylegenerator/

    易于使用的工具,可以生成我想要的样式。也可能对您有所帮助,因为您避免了这些问题。只需将其粘贴到您的项目中,即可完成。

    其他工具可以在这里找到:http://romannurik.github.io/AndroidAssetStudio/index.html

    【讨论】:

    • 感谢您的建议,就像一个魅力 :) 从现在开始可能会使用这个工具,因为自动化过程不太可能遗漏任何东西,这是风格工作所必需的。跨度>
    猜你喜欢
    • 1970-01-01
    • 2015-02-25
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多