Подтвердить что ты не робот

Специальная текстовая кнопка "Готово" на клавиатуре Android?

Я знаю, что я могу настроить свою кнопку "done" на разные вещи, используя

EditText.setImeOptions();

но как бы установить его в пользовательский текст? Возможно ли мне указать, какой текст я хочу?

4b9b3361

Ответ 1

Я не уверен, можно ли это сделать или нет, но согласно этой статье на веб-сайте разработчиков Android:

Поскольку IME покрывает приложение, у него есть своя область редактирования, которая показывает текст, фактически содержащийся в приложении. Существуют также некоторые ограниченные возможности, которые приложение должно настраивать для части IME (кнопка "done" наверху и вводить метку внизу внизу), чтобы улучшить работу пользователя.

Поэтому я сомневаюсь, что вы можете изменить его на все, кроме заранее определенных "Далее", "Готово", "Отправить", "Перейти" и "Поиск".

Ответ 2

На самом деле вы можете настроить собственный текст на эту маленькую синюю кнопку. В xml файле просто используйте

android:imeActionLabel="whatever"

на вашем EditText.

Или в файле java используйте

etEditText.setImeActionLabel("whatever", EditorInfo.IME_ACTION_DONE);

Я произвольно выбрал IME_ACTION_DONE в качестве примера того, что должно быть во втором параметре для этой функции. Полный список этих действий можно найти здесь здесь.

Следует отметить, что это не приведет к появлению текста на всех клавиатурах на всех устройствах. Некоторые клавиши не поддерживают текст на этой кнопке (например, swiftkey). И некоторые устройства не поддерживают его. Хорошим правилом является то, что если вы видите текст уже на кнопке, это изменит его на все, что вы захотите.

Ответ 3

Вы можете установить InputType вашего EditText View в xml файле

<EditText
   android:id="@+id/edt_input"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:imeActionLabel="DONE"
/>

для дополнительной информации вы можете проверить API