EditText 设置光标的颜色,宽度,高度

正常情况下,如果Edittext不做任何处理的话,光标的颜色是默认colorPrimary,光标的高度是输入文字的大小,宽度是默认的

查看EditText的xml属性,会发现EditText有一个属性:android:textCursorDrawable。
假如设置android:textCursorDrawable="@color/black_color",会发现这个光标消失了。

如果设置成 android:textCursorDrawable="@null",那么光标的颜色跟输入文字的颜色是一致,但是光标会很细。

正确姿势(自定义drawable)

定义一个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="2dp"//光标的宽度
        android:height="28dp" />// 光标的高度,需要注意的是edittext高度不能设置成自适应,不然,光标的高度还是输入文字大小
    <solid android:color="@color/azure" />//光标的颜色
    <padding    // 该参数是让光标高度跟文字大小不一致,我这边需求是文字大小14dp
        android:bottom="7dp"
        android:top="7dp" />
</shape>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容