简体   繁体   English

更改操作栏背景和标题颜色

[英]Change actionbar background and title color

I am new to Android development. 我是Android开发的新手。 The app on which I am working requires white action bar background and the title should be black in color. 我正在使用的应用程序需要白色操作栏背景,并且标题应为黑色。 I am using support library for lower compatibility. 我正在使用支持库来降低兼容性。

Style.xml Style.xml

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
     <!-- Customize your theme here. -->
</style>

How can I do this ? 我怎样才能做到这一点 ?

Styles : Main App Theme 样式:主应用主题

<style name="MyAppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <item name="android:actionBarStyle">@style/CustomActionBarStyle</item>
  <!-- Support library compatibility -->  
    <item name="actionBarStyle">@style/CustomActionBarStyle</item>

</style>

Setup styles for text and background color 文本和背景色的设置样式

<style name="CustomActionBarStyle" parent="@style/Widget.AppCompat.Light.ActionBar">
    <item name="android:background">@color/white</item>
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>

    <item name="background">@color/white</item>
    <item name="titleTextStyle">@style/MyActionBarTitleText</item>
</style>

Setup TextColor Impt: parent must @style/TextAppearance.AppCompat.Widget.ActionBar.Title 设置TextColor提示父项必须@style/TextAppearance.AppCompat.Widget.ActionBar.Title

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

For more refer links posted in @Santosh Shinde post 有关更多信息,请参阅@Santosh Shinde帖子中发布的链接。

Use This to change title color 使用此更改标题color

ActionBar actionBar = getActionBar();
         actionBar.setTitle(Html
         .fromHtml("<font color='#ffffff'> Now playing </font>"));

and for action bar title 和动作栏标题

getActionBar().setBackgroundDrawable(
         new ColorDrawable(Color.rgb(0, 0, 0)));

or 要么

getActionBar().setBackgroundDrawable(
         new ColorDrawable(Color.parseColor("#000000")));

Try this style: 试试这种风格:

<style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/ActionBar</item>
    <item name="android:buttonStyle">@style/Button</item>
    <item name="android:editTextStyle">@style/EditText</item>
    <item name="android:windowBackground">@android:color/black</item>
</style>

<style name="ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
    <item name="android:backgroundStacked">@color/core_other_light</item>
    <item name="android:backgroundSplit">@color/core_other</item>
    <item name="android:background">#00ff00</item>
</style>

You can find more information here and here . 您可以在此处此处找到更多信息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM