无法文本工具栏文本颜色

时间:2017-01-07 18:32:13

标签: android android-toolbar

我在我的活动中有这个代码:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
setTitle("My title");

styles.xml中,我有这个:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    //more stuff
</style>

<style name="Toolbar" parent="Theme.AppCompat">
    <item name="android:textAppearance">@style/Toolbar.Text</item>
</style>

<style name="Toolbar.Text">
    <item name="android:textColor">@android:color/white</item>
</style>

和工具栏布局:

  <android.support.v7.widget.Toolbar
     android:id="@+id/toolbar"
     android:layout_width="match_parent"
     android:layout_height="?attr/actionBarSize"
     app:layout_collapseMode="pin"
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
     app:theme="@style/Toolbar" />

我希望工具栏的文字是白色的,但它是黑色的。我尝试了很多东西,但我真的无法改变它。

3 个答案:

答案 0 :(得分:0)

使用编辑器。转到tools-&gt; android-&gt;主题编辑器。在那里你可以找到改变颜色的选项。

答案 1 :(得分:0)

无论是什么,问题都来自这条线:

<style name="Toolbar" parent="Theme.AppCompat">

而且:app:theme="@style/Toolbar"(您已使用app代替android,请注意这一点)

你真的不需要这样做。

只需将此行用于Toolbar

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

<强>所以:

<android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
                app:layout_scrollFlags="scroll|enterAlways"
                app:popupTheme="@style/AppTheme" />

然后你应该看到白色文字等

如您所见,我已将app:popupTheme设置为AppTheme参数为:

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

将该行添加到Toolbar后,现在可以删除这些:

<style name="Toolbar" parent="Theme.AppCompat">
    <item name="android:textAppearance">@style/Toolbar.Text</item>
</style>

<style name="Toolbar.Text">
    <item name="android:textColor">@android:color/white</item>
</style>

那么你应该做的唯一事情是将app:popupTheme的父级设置为:

Theme.AppCompat.Light.NoActionBar

它可以是您的Activity样式父级。

就是这样:))

答案 2 :(得分:-1)

你可能使用的SDK少于23你可以试试这个

在xml中: -

android:titleTextColor="@color/colorPrimary"

片段

 toolbar.setTitleTextColor(Color.RED);