问题
I'm trying to make the pointer color of EditText to become blue.
I'm able to make the underline and the cursor to become blue, but the droplet looking pointer is still grey.
I google a bit, but all the links that appear only talk about how to change the cursor, not the pointer. So if anybody knows how to do this, I need your help.
I only need to support Android 5.0 and above. So if your solution only works on API > 21, that's totally fine.
Thanks!
回答1:
in your styles.xml put like this:
<item name="colorAccent">@color/blue</item>
回答2:
I recognize this is really late, but if all you want to do is change the color of the handle, you just need to add the following to your styles.xml file.
<style name="ColoredHandleTheme">
<item name="colorControlActivated">@color/colorYouWant</item>
</style>
Or if you want to set it app-wide, you can do the following:
<style name="ColoredHandleThemeForWholeApp">
<item name="colorAccent">@color/colorYouWant</item>
</style>
And then just set the theme on whatever activity is holding the EditText which you want to affect.
Problem solved!
回答3:
After some hours of checking other solutions I found this one. If you wish to change a cursor handler only in one activity, you should do so. Change your values/styles.xml, for instance:
<style name="AppTheme.Cursor" parent="AppTheme">
<item name="colorAccent">@color/cursor</item>
</style>
where @color/cursor is added in values/color.xml. After that apply the style to the activity as written here: Apply a theme to an activity in Android?.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.AppTheme_Cursor);
...
来源:https://stackoverflow.com/questions/33929552/how-to-change-edittext-pointer-color-not-cursor