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

2019-07-23  本文已影响0人  FreedApe

正常情况下,如果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>

上一篇下一篇

猜你喜欢

热点阅读