2017-03-12 7 views
0

私は今追加したカスタムツールバーを持っています。setTheme colorprimaryはカスタムツールバーの背景として機能しませんか?

<?xml version="1.0" encoding="utf-8"?> 
    <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="40dp" 
     android:background="@color/colorPrimary" 
     android:theme="@style/ThemeOverlay.AppCompat.Dark"> 

    </android.support.v7.widget.Toolbar> 

私はcolorPrimaryとして背景を設定することに注意してください。

style.xmlで

私は2つのスタイルがあります。

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

    <style name="Yellow" parent="Theme.AppCompat.Light.NoActionBar"> 
     <item name="colorPrimary">#ffff00</item> 
     <item name="colorPrimaryDark">#000000</item> 
     <item name="colorAccent">#ffff00</item> 
    </style> 

私color.xmlを

<resources> 
    <color name="colorPrimary">#000</color> 
    <color name="colorPrimaryDark">#fff</color> 
    <color name="colorAccent">#000</color> 
</resources> 

私はsetThemeを使用して活動の色を変更します除き、

setTheme(colorId); 

それが動作しますsetThemeをYellowに設定しても、BACKGROUNDの色は常に黒です。

なぜですか?

答えて

2

以下のコードは、ツールバー

android:theme="@style/ThemeOverlay.AppCompat.Dark" 

の背景色をオーバーライドします。 ツールバーからアンドロイド:テーマ属性を削除しても機能します。

は、以下のコードに従っTEXTCOLOR変更するには:

<style name="CustomTextColor" parent="ThemeOverlay.AppCompat.Light"> 
    <item name="android:textColor">Your Text Color</item> 
</style> 

今すぐあなたのツールバーにテーマを設定します。このことができます

app:theme="@style/CustomTextColor" 

希望を。

+0

ありがとうございます!このツールバーのテキストを削除すると黒になりますが、どのように白として設定できますか? –

+1

Toolbar textcolorを定義できるカスタムテーマをツールバーに追加できます。私はあなたが好きなら、少しでもコードを追加します。 – tahsinRupam

+1

私は自分の答えを編集しました。お会計お願いします。 – tahsinRupam

関連する問題