簡體   English   中英

Android改變動作欄顏色

[英]Android Changing Action Bar color

我想更改動作欄顏色,但我不知道該怎么做。 我應該添加什么來改變風格?

<resources>

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

</style>

</resources>

這就是更改操作欄顏色所需的全部內容:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">#995544</item>
</style>

簡單的單行代碼

getSupportActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.red)));
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
</style

這里colorPrimary屬性可以幫助您更改操作欄的顏色。 有關詳細信息,請參閱此圖。

如果你的minSdk是21或更高,你可以添加以下內容:

<item name="colorPrimary">@color/yourColor</item>

如果沒有,請進行以下更改:

  1. 您的活動必須擴展AppCompatActivity

  2. 將您的主題更改為@style/Theme.AppCompat.Light.NoActionBar

  3. 將其添加到活動xml文件的頂部:

    <android.support.v7.widget.Toolbar android:id="@+id/my_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:elevation="4dp" android:theme="@style/ThemeOverlay.AppCompat.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

  4. super.onCreate調用之后將它放在onCreate方法中:

    Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar);

  5. 要更改顏色,只需用@color/yourColor替換?attr/colorPrimary @color/yourColor

請嘗試以下代碼:

<style name="AppCompatTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:background">#ff540e9e</item>
    <item name="android:textColor">#ffffff</item>
</style>

該代碼適用於我,它也改變了文本顏色

<resources>

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="actionBarStyle">@style/AppTheme.ActionBar</item>
</style>

<style name="AppTheme.ActionBar" parent="Widget.AppCompat.Light.ActionBar">
    <item name="android:titleTextStyle">@style/AppTheme.ActionBar.TitleText</item>
    <item name="titleTextStyle">@style/AppTheme.ActionBar.TitleText</item>
    <item name="background">@color/colorPrimary</item>
    <item name="android:height">150dp</item>
    <item name="height">60dp</item>
</style>

<style name="AppTheme.ActionBar.TitleText" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textSize">15dp</item>
    <item name="android:textColor">@color/colorAccent</item>
</style>

您可以在res / values / styles.xml文件中自定義應用程序的當前主題:

   <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
         // your custom styles added to theme        
     <item name="android:actionBarStyle">@style/MyActionBarTheme</item>
 </style>


     //Cutomise your theme by specifying layout,color, font type etc:
 <style name="MyActionBarTheme" 
        parent="@android:style/Widget.AppCompat.Light.DarkActionBar">
     // sets the background color of the activity/app:  
     <item name="android:background">#33FF33</item>
 </style>

然后,您需要將新的自定義主題名稱添加到您的應用清單文件中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM