如何更改EditText指针颜色(不是光标)

25

我想把 EditText 的指针颜色变为蓝色。

指针

我已经成功把下划线和光标变成了蓝色,但是这个像水滴一样的指针还是灰色的。

我搜索了一下,但是所有出现的链接都只是讲如何改变光标,而不是指针。如果有人知道如何做到这一点,请帮帮我。

我只需要支持 Android 5.0 及以上版本。所以,如果你的解决方案仅适用于 API > 21,则完全没有问题。

谢谢!


这是一个重复的问题,链接为https://dev59.com/M2Up5IYBdhLWcg3wrI3T。 - CoolMind
3个回答

12

在您的styles.xml中放置如下代码:

<item name="colorAccent">@color/blue</item>

3
这不是一个好的解决方案。它会改变应用程序中所有视图的光标颜色。请查看https://dev59.com/M2Up5IYBdhLWcg3wrI3T以获取正确的解决方案。 - CoolMind
1
如果我们想保持强调颜色不变,但只更改一个特定EditText的文本选择器指针的颜色,应该如何做? - mushahid
@CoolMind 你也可以在特定的活动中设置它,不需要在每个活动中设置主题。 - LukeWaggoner
该解决方案不适用于Android 5.0版本。它会改变一切:光标,处理程序和下划线。 - Juan José Melero Gómez
它还会改变下划线颜色。如果我们想要下划线和指针有不同的颜色呢? - Muhammad Hanzilah

9
我知道这已经很晚了,但如果您只想更改手柄的颜色,您只需要将以下内容添加到styles.xml文件中。
<style name="ColoredHandleTheme">
    <item name="colorControlActivated">@color/colorYouWant</item>
</style>

或者如果您想在整个应用中设置它,可以执行以下操作:

<style name="ColoredHandleThemeForWholeApp">
    <item name="colorAccent">@color/colorYouWant</item>
</style>

然后只需在持有您想影响的EditText的活动上设置主题。

问题解决了!


它还会改变下划线的颜色。如果我们想要下划线和指针有不同的颜色呢? - Muhammad Hanzilah

0
您可以使用“textSelectHandle”并设置自定义可绘制对象来获得所需的输出。如下所示-
<style name="MyCustomTheme">
    <item name="android:textSelectHandle">@drawable/middle_icon</item>
</style>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接