Изменение размера курсора в текстовом поле (Создание Jetpack)

#android #textfield #android-jetpack-compose

Вопрос:

Я хочу уменьшить «высоту» курсора в моем текстовом поле. Как мне это сделать?

Мое текстовое поле с высотой курсора по умолчанию выглядит так:

Мое текстовое поле

Комментарии:

1. попробуйте уменьшить fontSize , также вы можете повозиться с высотой и стилями

Ответ №1:

Мы можем настроить курсор текстового поля с помощью CoreTextField.cursorBrush Brush.verticalGradient аргумента , с colorStops и.

 BasicTextField(
    cursorBrush = Brush.verticalGradient(
        0.00f to Color.Transparent,
        0.35f to Color.Transparent,
        0.35f to Color.Green,
        0.90f to Color.Green,
        0.90f to Color.Transparent,
        1.00f to Color.Transparent
    )
)
 

Ответ №2:

res/drawable/custom_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"// cursor width
        android:height="28dp" />// cursor height should be noted that the height can not be set edittext adaptation, otherwise, the cursor height or size of the input character
    
<solid android:color="@color/azure" />// color of the cursor
    
<padding    // This parameter allows the cursor is highly inconsistent with the text size, text size I need is here 14dp
        android:bottom="7dp"
        android:top="7dp" />
</shape>
 

В вашем редактируемом тексте:

 android:textCursorDrawable="@drawable/custom_cursor"
 

Комментарии:

1. Приятель, я использую Jetpack compose, а не систему просмотра.