【问题标题】:Changing ActionBar Title Text Color更改 ActionBar 标题文本颜色
【发布时间】:2014-07-23 03:45:25
【问题描述】:

我正在尝试更改 ActionBar 中标题文本的颜色,但似乎无法正常工作

这是我正在尝试使用的风格

<style name="TitleColorStyle" parent="android:TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="android:textColor">@android:color/white</item>
</style>

在我的应用主题中,我使用titleTextStyle

<style name="AppTheme" parent="android:Theme.Holo.Light">

    <item name="android:windowContentOverlay">@null</item>
    <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
    <item name="android:actionDropDownStyle">@android:style/Widget.Holo.Spinner</item>
    <item name="android:titleTextStyle">@style/TitleColorStyle</item>
</style>

我没有使用正确的样式来改变颜色吗?

【问题讨论】:

  • 这个代码不起作用的android版本?
  • 4.4.2 moto x 当我打开导航栏时
  • 看起来都不错,除了父母
  • @blackbelt 父母怎么了?

标签: android android-actionbar


【解决方案1】:

您需要为actionBarStyle 设置自定义样式,然后像这样更改titleTextStyle

 <style name="ThemeHoloLight" parent="android:Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/ActionBarStyle</item>
</style>

<style name="ActionBarStyle" parent="android:Widget.Holo.Light.ActionBar">
    <item name="android:titleTextStyle">@style/HoloTitleText</item>
</style>

<style name="HoloTitleText" parent="android:TextAppearance.Holo">
    <item name="android:textColor">@android:color/white</item>
</style>

【讨论】:

    【解决方案2】:

    Blackbelt 是正确的 - 你的父母不符合正确的语法。试试这个:

    <style name="AppTheme" parent="@android:style/Theme.Holo.Light">
    

    【讨论】:

    • 添加style 没有改变
    【解决方案3】:

    AndroidManifest.xml:

    <application android:theme="@style/MyAppTheme"
    

    values/styles.xml:

    <style name="MyAppTheme" parent="android:Theme.Light">
        <!-- Customize your theme here. -->
    </style>
    

    values-v11/styles.xml:

    <style name="MyAppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <!-- Customize your theme here. -->
    </style>
    
    <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
        <item name="android:background">@color/orangeDark</item>
        <item name="android:titleTextStyle">@style/MyActionBar.Text</item>
    </style>
    
    <style name="MyActionBar.Text" parent="android:style/TextAppearance.Holo.Widget.ActionBar.Title">
        <item name="android:textColor">@color/white</item>
        <item name="android:textStyle">bold</item>
    </style>
    

    【讨论】:

      【解决方案4】:

      此代码将起作用

      styles.xml

      <style name="AppTheme" parent="@android:Theme.Holo.Light">
      
          <item name="android:actionBarStyle">@style/ActionBar</item>
          <item name="android:actionBarWidgetTheme">@style/ActionBar</item>
          <item name="android:actionMenuTextAppearance">@style/ActionMenu</item>
          <item name="android:itemTextAppearance">@style/ActionMenu</item>
      
      </style>
      
      <style name="ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
          <item name="android:background">@color/blue</item>
          <item name="android:textColorHint">@android:color/widget_edittext_dark</item>
          <item name="android:titleTextStyle">@style/ActionBarTitleText</item>
      </style>
      
      <style name="ActionMenu" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Menu">
          <item name="android:textColor">@drawable/selector_action_bar_menu</item>
          <item name="android:textSize">@dimen/text_label</item>
          <item name="android:textStyle">normal</item>
          <item name="android:textAllCaps">false</item>
      </style>
      
      <style name="ActionBarTitleText" parent="@android:style/TextAppearance.Holo">
          <item name="android:textSize">@dimen/text_action_bar_title</item>
          <item name="android:textColor">@android:color/white</item>
      </style>
      

      可绘制/selector_action_bar_menu

      <selector xmlns:android="http://schemas.android.com/apk/res/android" >
          <item android:state_enabled="false" android:color="@android:color/darker_gray"/>
          <item android:state_enabled="true" android:color="@android:color/white"/>
      </selector>
      

      覆盖样式“android:actionMenuTextAppearance”和“android:titleTextStyle”很重要。我使用选择器来改变它。

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-01-08
        • 2017-07-08
        • 1970-01-01
        相关资源
        最近更新 更多