Как сделать Android EditText расширяться по вертикали, когда полный
У меня есть этот EditText
<EditText
android:layout_width="match_parent"
android:layout_height="72dp"
android:hint="@string/write_message"
android:textColorHint="@color/primary_color"
android:ems="10"
android:imeOptions="actionDone"
android:inputType="textImeMultiLine"
android:id="@+id/message_input"
android:layout_gravity="center_horizontal"
android:backgroundTint="@color/primary_color"/>
когда поле заполняется введенным пользователем текстом, он прокручивается вправо, чтобы освободить место для большего количества текста, мне не нравится это поведение, и я бы предпочел, чтобы поле EditText расширилось вверх, когда ему нужно больше места? Есть ли способ сделать это? Спасибо.
1 ответов
Да, это на самом деле включает в себя две вещи:
- делает
EditText
принимаем мульти-линейный вход. - его высота растет по мере добавления дополнительных текстовых строк.
поэтому для достижения этой цели необходимо настроить:
android:inputType="textMultiLine"
android:layout_height="wrap_content"
(помните о разницу между textMultiLine
и textImeMultiLine
).
полный фрагмент XML будет:
<EditText
android:layout_width="match_parent"
android:inputType="textMultiLine"
android:layout_height="wrap_content"
android:hint="@string/write_message"
android:textColorHint="@color/primary_color"
android:ems="10"
android:imeOptions="actionDone"
android:id="@+id/message_input"
android:layout_gravity="center_horizontal"
android:backgroundTint="@color/primary_color"/>