风格
<style name="MyTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/my_primary_color</item>
<item name="colorPrimaryDark">@color/my_primary_dark_color</item>
<item name="colorAccent">@color/accent</item>
</style>
布局
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
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:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</android.support.design.widget.AppBarLayout>
通过应用上述主题android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
,
在AppBar
中,工具栏TextColor和工具栏项目在棒棒糖中为白色,在棒棒糖前为黑色。
棒棒糖
前棒棒糖
通过应用以下主题app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
Lollipop和棒棒糖前设备中的工具栏Textcolor和溢出图标变黑。
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app: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:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</android.support.design.widget.AppBarLayout>
棒棒糖
前棒棒糖
如何让Toolbar TextColor和OverFlow Menu图标颜色变为白色?正如您在上面的代码中所看到的,我使用了
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
和
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
但它没有成功。任何帮助将不胜感激。
答案 0 :(得分:4)
这对我有用!
<style name="AppTheme.WithoutActionBar" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
<item name="colorPrimaryDark">@color/titleBarColor</item>
<item name="colorPrimary">@color/actionBarColor</item>\
<item name="colorAccent">@color/colorAccent</item>
<item name="colorControlActivated">?attr/colorAccent</item>
<item name="android:textColorPrimary">@color/abc_primary_text_material_dark</item>
<item name="android:textColorSecondary">@android:color/white</item>
<item name="actionMenuTextColor">@android:color/white</item>
<item name="colorControlNormal">@android:color/white</item>
</style>
在清单中!
<activity
android:name=".MainActivity"
android:theme="@style/AppTheme.WithoutActionBar"/>
答案 1 :(得分:1)
您似乎忘了将cout<<si->board[i]<<" ";
应用于ThemeOverlay
本身(我不确定它是否适用于Toolbar
,上次检查时,在支持lib中它只适用于AppBarLayout
Toolbar
)
因此,请将此属性添加到<android.support.v7.widget.Toolbar>
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
它应该全部到位,不需要额外的文本颜色调整。
答案 2 :(得分:0)
强制标题,副标题,actiobar,工具栏等颜色的最佳方法是使用html代码。
actionBar.setTitle(Html.fromHtml("<font color='#FFFFFF'>ActionBarTitle </font>"));
对其他标题也一样。这样,使用哪个主题或SDK并不重要,它始终是白色的。
答案 3 :(得分:0)
制作自己的文字样式并将其设置为Tollbar
:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
[...]
app:titleTextAppearance="@style/AppTheme.Toolbar.Title.MyStyle" />
式:
<style name="AppTheme.Toolbar.Title.MyStyle" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<!-- Set title color -->
<item name="android:textColor">@color/toolbar_title</item>
</style>
答案 4 :(得分:0)
在styles.xml
或theme.xml
的值和值-v21文件夹中添加以下这些行
<style name="AppTheme.Base" parent="Theme.AppCompat.Light">
<item name="colorPrimary">@color/my_primary_color</item>
<item name="colorPrimaryDark">@color/my_primary_dark_color</item>
<item name="colorAccent">@color/accent</item>
<item name="android:titleTextStyle">@android:color/white</item>
<item name="actionMenuTextColor">@android:color/holo_blue_dark</item>
<item name="android:actionMenuTextColor">@android:color/white</item>
<item name="android:textColorSecondary">@android:color/white</item>
</style>