要改变Android的EditText上光标颜色,有跨越所有设备要工作
Answer 1:
我不得不使用绘制这样的:
mycursor.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<size android:width="1dp" />
<solid android:color="@android:color/holo_blue_light"/>
<!--make sure its a solid tag not stroke or it wont work -->
</shape>
在我编辑文本我这样设置光标绘制属性:
<EditText
android:id="@+id/et_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:cursorVisible="true"
android:textCursorDrawable="@drawable/mycursor"
/>
Answer 2:
在所有平台上得到它的方式是这样。
1 - 你的布局文件夹中打开你的layout.xml。 查找编辑文本和设置
android:cursorVisible="true"
这将设置光标的设备比OS版本11
2 - 在绘制文件夹中创建您的cursor_drawable.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<size android:width="1dp" />
<stroke android:color="@color/black"/>
</shape>
3 - 创建一个文件夹布局-V11
4 - 你layout.xml复制到布局-V11
5 - 寻找你的编辑文本并设置机器人:textCursorDrawable =“@绘制/ cursor_drawable”
这将使游标上的所有设备和操作系统中。
Answer 3:
指定android:textCursorDrawable
属性@null
并设置android:textColor
为光标颜色。
Answer 4:
创建drawalble XML:edtcolor_cursor
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<size android:width="1dp" />
<solid android:color="#FFFFFF" />
</shape>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:cursorVisible="true"
android:textCursorDrawable="@drawable/edtcolor_cursor"
/>
Answer 5:
请参阅此链接。 你可以试试这
android:textCursorDrawable
文章来源: Change the color of the cursor of an EditText in Android across all the sdk