Android - Action Bar上的自定义样式

时间:2017-05-17 15:48:15

标签: android

是否可以在特定活动中自定义操作栏的背景(和标题)?我做了什么,它没有工作:

<style name="AppTheme.BenchTheme"> <!-- style of my activity -->
    <item name="android:windowBackground">@android:color/holo_blue_light</item>
    <item name="android:actionBarStyle">@style/BenchActionBar</item>
</style>

<style name="BenchActionBar">
    <item name="android:background">@color/colorBench</item>
</style>

我想在我的style.xml中做到这一点。可能吗?我知道我可以通过代码(使用类似getSupportActionBar()。setBackgroundDrawable(myColor);)...

由于

1 个答案:

答案 0 :(得分:0)

首先让你的Theme从Theme.AppCompat.Light.NoActionBar延伸:

<style name="AppTheme.BenchTheme" parent="Theme.AppCompat.Light.NoActionBar">

然后在您的布局中,您可以根据需要添加工具栏,例如:

<?xml version="1.0" encoding="utf-8"?>
    <android.support.v7.widget.Toolbar
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/kelly_green"
        android:fitsSystemWindows="true"
        android:minHeight="?attr/actionBarSize"
        style="@style/MyToolbarElevation"
        >

     <android.support.v7.widget.AppCompatTextView
              android:id="@+id/txt_toolbar"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:layout_marginRight="@dimen/_2sdp"
              android:gravity="center"
              android:textColor="#ffffff"
              android:textSize="@dimen/_13sdp"
              />
    </android.support.v7.widget.Toolbar>