Android app-compat工具栏样式

时间:2015-03-01 18:03:33

标签: android android-actionbar android-theme android-styles android-toolbar

我现在有更大的问题,我如何为kitkat / jellybean上的工具栏图标着色。在棒棒糖上,我可以使用

        <item name="android:textColorSecondary">@color/ttdPrimaryColor</item>

这似乎是旅行,但在kitkat没有这样的运气。

我想弄清楚如何设置工具栏上的菜单图标主题。我需要将标题保持为白色,但我希望菜单图标为不同的颜色。

这是我目前的风格:

 <style name="ToolBarStyle" parent="@style/ThemeOverlay.AppCompat.ActionBar">
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>

    <item name="android:textColorPrimary">@color/white</item>
    <item name="android:textColorSecondary">?colorPrimary</item>
    <item name="actionMenuTextColor">@android:color/white</item>
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
</style>

工具栏看起来像:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar_actionbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="@dimen/abc_action_bar_default_height_material"
app:popupTheme="@style/Theme.AppCompat.Light.NoActionBar"
app:theme="@style/ToolBarStyle" />

另一个问题是,在大多数活动中,我希望抽屉切换为应用程序的主要颜色,但在某些活动中,我希望它是白色的。处理这个问题的最佳方法是什么。

谢谢, 森

1 个答案:

答案 0 :(得分:0)

您可以为您的活动定义主题(而不是工具栏)。 像这样:

<style name="MyTheme" parent="Theme.AppCompat">
   <item name="drawerArrowStyle">@style/MyDrawerArrowToggle</item>
</style>

<style name="MyDrawerArrowToggle"  
          parent="Widget.AppCompat.DrawerArrowToggle">
  <item name="color">@color/my_color</item>
</style>