Android下EditText使用android:lineSpacingExtra設置了行距,顯示時光標的高度也會增加。
解決方法:自定義cursor光標的背景乖阵,設置padding bottom的值為負值巾钉,就可以抵消行間距的影響(android 14)以上。
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textSize="14sp"
android:lineSpacingExtra="10dp"
android:textCursorDrawable="@drawable/color_cursor" />
color_cursor.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"/>
<padding android:bottom="-10sp"></padding>
<solid android:color="@color/contractions"/>
</shape>