簡體   English   中英

如何更改操作欄標題的背景顏色

[英]How to change background color of Action Bar Title

更改整個操作欄的背景顏色或僅更改操作欄標題的文本顏色很容易,但是我發現沒有辦法像這樣更改僅標題的背景色:

在此處輸入圖片說明

我試過了 :

<style name="MyActionBar.TitleTextStyle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="android:textColor">#000</item>
    <item name="android:padding">5px</item>
    <item name="android:background">#CC0000</item>
</style>

但是只有textColor有效

嘗試在onCreate()上執行以下代碼

getActionBar().setBackgroundDrawable(new ColorDrawable(color.white));

首先,您需要為應用程序(或活動,取決於您的需要)聲明一個自定義主題。 就像是…

<!-- Somewhere in AndroidManifest.xml -->
<application ... android:theme="@style/ThemeSelector">

然后,針對兩種情況(帶有和不帶有Holo主題的API版本)聲明自定義主題。 對於舊主題,我們將自定義windowTitleBackgroundStyle屬性,對於較新的主題,將自定義ActionBarStyle。

<style name="ThemeSelector" parent="android:Theme.Light">
    <item name="android:windowTitleBackgroundStyle">@style/WindowTitleBackground</item>
</style>

<style name="WindowTitleBackground">     
    <item name="android:background">@color/title_background</item>
</style>

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

<style name="ActionBar" parent="android:style/Widget.Holo.ActionBar">     
    <item name="android:background">@color/title_background</item>
</style>

而已! 在這里,我們使用@ color / title_background作為背景。 它也可以是可繪制的,您也可以自定義其他屬性。

我通過使用2個RelativeLayouts(外部為0填充,內部為普通填充)創建了一個ActionBar所在的ImageView。 然后,我將ImageView添加到外部布局,並從那里對其進行操作,使其像一個動作欄一樣,但是具有更多我自己的控件。

android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffffff"
tools:context="dayOfWeekApp.MainActivity"
>

<ImageView
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:id="@+id/topBorder"
    android:elevation="-1dp"
    android:background="#649175"
    android:layout_alignParentTop="true"
    android:layout_alignParentStart="true"/>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    >

其他布局元素...

暫無
暫無

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

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