setImeOptions не работает при установке android:inputType="text", но при использовании android:inputType="textPassword" это работает?

У меня есть EditText:

<EditText
                            android:id="@+id/vpa"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:background="@drawable/roundedcornerwhite"
                            android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-.@"
                            android:hint="Enter UPI ID"
                            android:imeOptions="actionDone"
                            android:maxLines="1"
                            android:inputType="text"
                            android:paddingBottom="14dp"
                            android:paddingLeft="@dimen/padding_10dp"
                            android:paddingRight="@dimen/padding_10dp"
                            android:paddingTop="14dp"
                            android:textColor="@color/colorPrimaryText"
                            android:textColorHint="@color/hintcolor"
                            android:textCursorDrawable="@drawable/cursor"
                            android:textSize="@dimen/large_text_size" />

Когда я устанавливаю inputType как textPassword, imeoptions работает, хотя я не могу получить нужную кнопку actionDone. Но когда я использую текст ввода типа, imeoptions не работает в этом случае. Что я делаю неправильно?

1 ответ

EditText в XML имеет собственную волю.

Сделайте это программно, и ваша проблема решена:

vpa.setImeOptions(EditorInfo.IME_ACTION_DONE);
vpa.setRawInputType(InputType.TYPE_CLASS_TEXT);
Другие вопросы по тегам