【发布时间】:2020-06-30 15:31:30
【问题描述】:
我目前正在创建一个应用程序,它有一个 MaterialToolbar 小部件。我想将图标颜色设置为白色。
我尝试按照this question 中接受的答案进行操作,但是它不起作用。在styles.xml 中添加colorControlNormal 不起作用。
这是我的 MaterialToolbar xml 代码:
<com.google.android.material.appbar.MaterialToolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/topToolbar"
android:background="@color/colorPrimaryDark"
app:title="Revo"
app:titleTextColor="@android:color/white"
app:menu="@menu/menu_floatingsearchview"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
我能做什么?
编辑、解决方案和解释
感谢大家的精彩回答。我设法找到了一个解决方案,其中包括解决方案和另一个问题。
在this 问题中,有人问为什么colorControlNormal 不起作用。接受的答案是在向量行中,您必须更改给定android:fillColor 的值,并将其替换为?attr/colorControlNormal。执行此技巧,项目 colorControlNormal,将控制所需的图标颜色。
在应用的main样式中,需要放入:
<item name="colorControlNormal">@android:color/white</item>
然后,在想要的图标中,你需要把path下:
android:fillColor="?attr/colorControlNormal"
就是这样!现在图标将获得赋予 colorControlNormal 属性的颜色!
【问题讨论】:
-
您指的是哪些图标?检查stackoverflow.com/questions/58074174/…
-
@GabrieleMariotti 我指的是工具栏右侧的两个图标,包含在一个名为 menu_floatingsearchview 的菜单 xml 文件中。我必须用菜单代码更新线程吗?
标签: android android-toolbar android-xml android-theme material-components-android