我正在尝试使
EditText
的指针颜色变为蓝色。
我可以使下划线和光标变成蓝色,但看起来像水滴的指针仍然是灰色的。
我用谷歌搜索了一下,但出现的所有链接都只讨论如何更改光标,而不是指针。因此,如果有人知道如何做到这一点,我需要你的帮助。
我只需要支持Android 5.0及以上版本。因此,如果您的解决方案仅适用于 API > 21,那完全没问题。
谢谢!
在你的 styles.xml 中这样写:
<item name="colorAccent">@color/blue</item>
我知道这确实很晚了,但如果您只想更改手柄的颜色,您只需将以下内容添加到您的 styles.xml 文件中。
<style name="ColoredHandleTheme">
<item name="colorControlActivated">@color/colorYouWant</item>
</style>
或者,如果您想在应用程序范围内设置它,您可以执行以下操作:
<style name="ColoredHandleThemeForWholeApp">
<item name="colorAccent">@color/colorYouWant</item>
</style>
然后只需将主题设置为持有您想要影响的
EditText
的任何活动即可。
问题解决了!
您可以使用“textSelectHandle”并设置自定义绘图以获得所需的输出。如下图-
<style name="MyCustomTheme">
<item name="android:textSelectHandle">@drawable/middle_icon</item>
</style>
对于那些想知道如何通过 compose 获得相同结果的人:
@Composable
fun ComposableComponent() {
val colors = TextFieldDefaults.colors(
selectionColors = TextSelectionColors(
handleColor = Color.Green,
backgroundColor = Color.Cyan
)
)
TextField(
value = testTextFiedValue,
onValueChange = { testTextFiedValue = it },
colors = colors
)