我试图找到一种方法来改变一个材料3开关的轮廓颜色,由于一些奇怪的原因,我找不到一种方法,我会很感激,如果有人能告诉我如何在XML和代码背后做到这一点。
此外,如果您能指导我了解Material 3组件的文档,我将不胜感激!
我当前的switch看起来像这样:
<com.google.android.material.materialswitch.MaterialSwitch
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:checked="true"
android:text="Material 3"/>
字符串
多谢帮忙!
2条答案
按热度按时间unhi4e5o1#
根据材料组件的文件:
1.定义新的
MaterialSwitch
样式在
styles.xml
中定义新样式,定义materialThemeOverlay
项字符串
2.定义您的
ThemeOverlay
型
在这里,你有两种方法:将你的样式实现到all
MaterialSwitch
或手动将你的样式应用到你的MaterialSwitch
。3.将样式应用于所有
MaterialSwitch
在styles.xml中的主样式中,为所有
MaterialSwitch
应用新样式型
3.1申请单例
MaterialSwitch
样式型
8wtpewkr2#
1.使用XML
字符串
在这里,您需要使用
app:trackDecorationTint="#AA3710"
设置轨道轮廓颜色,并将#AA3710
设置为您想要的任何颜色。如果您像上面的示例中那样提供单一颜色,则相同的颜色将用于所有状态,如选中,未选中,禁用。要为每个状态提供单独的颜色,您可以将引用传递到颜色的状态列表XML文件。输出
的数据
1.使用代码(Java)
为每个状态单独设置颜色
型
所有州的颜色相同
型