2015-06-25 88 views
0

我在我的活動中添加了獨立的工具欄,它顯示出來,但沒有顯示我爲它定義的顏色。我正在使用的代碼有什麼問題?工具欄顏色在android中不改變

以下是我正在使用的代碼。

activity_categories.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center" 
    android:orientation="vertical" 
    android:weightSum="10" 
    android:background="#D32F2F" 
    tools:context="com.example.knowledgeup.LoginActivity" > 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_height="0dp" 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:elevation="4dp" 
     style="@style/ToolbarTheme" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:orientation="vertical" 
     android:layout_weight="8" > 

     <ListView 
      android:id="@+id/list" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" > 
     </ListView> 

    </LinearLayout> 

</LinearLayout> 

這就是我把它添加到我的活動在Java文件

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_categories); 

    mToolbar = (Toolbar)findViewById(R.id.toolbar); 
    mToolbar.setTitle(R.string.title_activity_categories); 

} 

,這是我的styles.xml

<resources> 

    <!-- 
     Base application theme, dependent on API level. This theme is replaced 
     by AppBaseTheme from res/values-vXX/styles.xml on newer devices. 
    --> 
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light"> 
     <!-- 
      Theme customizations available in newer API levels can go in 
      res/values-vXX/styles.xml, while customizations related to 
      backward-compatibility can go here. 
     --> 
    </style> 

    <!-- Application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
     <item name="android:windowNoTitle">true</item> 
     <item name="windowActionBar">false</item> 
    </style> 

    <style name="ToolbarTheme" parent="Theme.AppCompat"> 
     <item name="colorPrimary">@color/material_blue_grey_900</item> 
     <item name="colorPrimaryDark">@color/color_toolbar</item> 
    </style> 
</resources> 

這是怎麼了它的表現 enter image description here

回答

1

activity_categories.xml

或者在你的styles.xml

<style name="ToolbarTheme" parent="Theme.AppCompat"> 
    <item name="colorPrimary">@color/material_blue_grey_900</item> 
    <item name="colorPrimaryDark">@color/color_toolbar</item> 
    <item name="android:background">@color/color_toolbar</item> 
</style> 
+0

你的第一個解決方案工作 –

0

使用以下屬性來更改工具欄的顏色試試這個

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_height="0dp" 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:elevation="4dp" 
    android:background = "@color/color_toolbar" 
    style="@style/ToolbarTheme" /> 

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:id="@+id/activity_my_toolbar" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:minHeight="?attr/actionBarSize" 
android:background="?attr/colorPrimary" 
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> 
0

您只需要設置工具欄中的背景。

e.g.Code片段

<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/action_bar_bg" 
    android:elevation="@dimen/elevation_button_default" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark" /> 
相關問題