如何更改Android中的默认 CheckBox
颜色?
默认情况下 CheckBox
颜色是绿色的,我想改变这个颜色。
如果不可能,请告诉我如何定制 CheckBox
?
原文由 Piyush 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何更改Android中的默认 CheckBox
颜色?
默认情况下 CheckBox
颜色是绿色的,我想改变这个颜色。
如果不可能,请告诉我如何定制 CheckBox
?
原文由 Piyush 发布,翻译遵循 CC BY-SA 4.0 许可协议
我更喜欢我创建的这个扩展函数:
fun CheckBox.setTint(@ColorInt color: Int?) {
if (color == null) {
CompoundButtonCompat.setButtonTintList(this, null)
return
}
CompoundButtonCompat.setButtonTintMode(this, Mode.SRC_ATOP)
CompoundButtonCompat.setButtonTintList(this, ColorStateList.valueOf(color))
}
它与我为 ImageView 所拥有的非常相似,以防万一有人也想要它:
fun ImageView.setTint(@ColorInt color: Int?) {
if (color == null) {
ImageViewCompat.setImageTintList(this, null)
return
}
ImageViewCompat.setImageTintMode(this, Mode.SRC_ATOP)
ImageViewCompat.setImageTintList(this, ColorStateList.valueOf(color))
}
原文由 android developer 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答1.3k 阅读✓ 已解决
2 回答2.6k 阅读
2 回答1.7k 阅读
1 回答2.1k 阅读
1 回答1.1k 阅读
1 回答1.3k 阅读
1.3k 阅读
如果您的
minSdkVersion
是 21+,请使用android:buttonTint
属性来更新复选框的颜色:在使用 AppCompat 库并支持低于 21 的 Android 版本的项目中,您可以使用
buttonTint
属性的兼容版本:在这种情况下,如果你想继承一个
CheckBox
不要忘记使用AppCompatCheckBox
代替。以前的答案:
您可以使用
android:button="@drawable/your_check_drawable"
属性更改CheckBox
s drawable。