#android #android-studio #android-edittext #android-7.0-nougat
#Android #android-studio #android-edittext #android-7.0-нуга
Вопрос:
У меня есть текст редактирования, объявленный в xml, подобный этому, со следующими свойствами, и я установил android:imeOptions="actionNext"
<EditText
android:id="@ id/ui_row_create_poll_edit_text_txt_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/margin_normal"
android:layout_toLeftOf="@id/ui_row_create_task_user_info"
android:background="@android:color/transparent"
android:paddingBottom="@dimen/padding_large_plus_little"
android:paddingLeft="@dimen/padding_large_plus_little"
android:paddingTop="@dimen/padding_large_plus_little"
android:singleLine="true"
android:maxLength="@integer/task_length"
android:imeOptions="actionNext"
android:textColor="@color/black"
android:textSize="@dimen/font_very_large"/>
В коде я добавил редактор actionlistener следующим образом.
public boolean onEditorAction(TextView v, int actionId, KeyEventevent{
if (actionId == EditorInfo.IME_ACTION_DONE || actionId == EditorInfo.IME_ACTION_NEXT) {
listener.onActionDone(option, etOption);
}
В Api < 24 я получаю actionId
as EditorInfo.IME_ACTION_NEXT
, и он работает нормально. но когда я запускаю свое приложение на Android 7.0 actionId
, я получаю EditorInfo.IME_ACTION_IME_ACTION_UNSPECIFIED
Может кто-нибудь указать, почему я получаю другой ActionID в Api-24. Если есть какие-либо изменения в EditText в Android-7.0, пожалуйста, укажите мне на некоторые ссылки. Спасибо.
Примечание: мой EditText помещается в listview
Комментарии:
1. попробуйте добавить
android:inputType="text"
в свойEditText
2. @Logic: все тот же результат
3. Никаких изменений в Android 7. Ваш код отлично работает с ActionID как IME_ACTION_NEXT на моем устройстве Nougat. Используете ли вы какую-либо пользовательскую клавиатуру?
4. @FebiMathew: мой редактируемый текст помещается внутри списка. возможно, это вызовет проблему
Ответ №1:
У меня такая же проблема с использованием android:imeActionLabel
Попробуйте удалить его и оставить реализацию по умолчанию