样式化工具栏菜单项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了样式化工具栏菜单项相关的知识,希望对你有一定的参考价值。

由于我对android UI很陌生,我现在花费了太多时间尝试在工具栏的项目(按钮)上添加不同的颜色。

enter image description here

我希望“清除”按钮变白。这是工具栏菜单的代码

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">
    <item
        android:id="@+id/actionClear"
        android:orderInCategory="100"
        android:title="@string/clear"
        app:showAsAction="always" />
    <item
        android:id="@+id/actionCheck"
        android:icon="@drawable/ic_check"
        android:orderInCategory="300"
        android:title="@string/done"
        app:showAsAction="ifRoom" />
</menu>

在我的styles.xml中,我有以下内容:

<style name="Theme" parent="Theme.MaterialComponents.Light.NoActionBar">
    <item name="toolbarStyle">@style/Theme.Toolbar</item>
</style>

<style name="Theme.Toolbar" parent="Widget.MaterialComponents.Toolbar">
    <item name="android:background">@color/kaki_light</item>
    <item name="titleTextColor">@color/white</item>
    <item name="titleTextAppearance">@style/Theme.Toolbar.TitleAppearance</item>
</style>

我尝试了很多东西,但我不确定如何识别菜单项。

非常感谢!

答案

试试这个创建这个主题

@白颜色

@白颜色

或试试这个

@Override public void onCreateOptionsMenu(菜单菜单,MenuInflater inflater)

inflater.inflate(R.menu.your_menu, menu);

int positionOfMenuItem = 0; 

MenuItem item = menu.getItem(positionOfMenuItem);

SpannableString s = new SpannableString("My red MenuItem");

s.setSpan(new ForegroundColorSpan(Color.RED), 0, s.length(), 0);

item.setTitle(s);

以上是关于样式化工具栏菜单项的主要内容,如果未能解决你的问题,请参考以下文章

列表项和嵌套子菜单列表之间的间隙导致悬停状态丢失

如何更改工具栏导航和溢出菜单图标(appcompat v7)?

如何在工具栏中禁用菜单项长按侦听器

kivyMD:如何使用工具栏操作项创建下拉菜单?

在工具栏溢出菜单中显示菜单项图标时,这种奇怪的情况是如何发生的?

当光标离开激活项时,工具条菜单项会自行更改颜色