Я знаю, что я могу настроить свою кнопку "done" на разные вещи, используя
EditText.setImeOptions();
но как бы установить его в пользовательский текст? Возможно ли мне указать, какой текст я хочу?
Я знаю, что я могу настроить свою кнопку "done" на разные вещи, используя
EditText.setImeOptions();
но как бы установить его в пользовательский текст? Возможно ли мне указать, какой текст я хочу?
Я не уверен, можно ли это сделать или нет, но согласно этой статье на веб-сайте разработчиков Android:
Поскольку IME покрывает приложение, у него есть своя область редактирования, которая показывает текст, фактически содержащийся в приложении. Существуют также некоторые ограниченные возможности, которые приложение должно настраивать для части IME (кнопка "done" наверху и вводить метку внизу внизу), чтобы улучшить работу пользователя.
Поэтому я сомневаюсь, что вы можете изменить его на все, кроме заранее определенных "Далее", "Готово", "Отправить", "Перейти" и "Поиск".
На самом деле вы можете настроить собственный текст на эту маленькую синюю кнопку. В xml файле просто используйте
android:imeActionLabel="whatever"
на вашем EditText.
Или в файле java используйте
etEditText.setImeActionLabel("whatever", EditorInfo.IME_ACTION_DONE);
Я произвольно выбрал IME_ACTION_DONE в качестве примера того, что должно быть во втором параметре для этой функции. Полный список этих действий можно найти здесь здесь.
Следует отметить, что это не приведет к появлению текста на всех клавиатурах на всех устройствах. Некоторые клавиши не поддерживают текст на этой кнопке (например, swiftkey). И некоторые устройства не поддерживают его. Хорошим правилом является то, что если вы видите текст уже на кнопке, это изменит его на все, что вы захотите.
Вы можете установить InputType вашего EditText View в xml файле
<EditText
android:id="@+id/edt_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeActionLabel="DONE"
/>
для дополнительной информации вы можете проверить API