Android IME_ACTION_NEXT不';I don’我无法处理版面的最后一个编辑文本
我有一个垂直的Android IME_ACTION_NEXT不';I don’我无法处理版面的最后一个编辑文本,android,android-layout,android-edittext,Android,Android Layout,Android Edittext,我有一个垂直的LinearLayout,带有EditTexts列表。Android自动为我处理IME操作:IME\u action\u NEXT用于所有EditTexts,但最后一个除外,它是IME\u action\u DONE 现在,我想通过编程将最后一个EditText的IME操作也设置为IME\u action\u NEXT,并将下一个EditText的ID设置为重点(第一个,允许用户在所有字段上“循环”)。但当我这样做的时候: int firstEditTextId = ... val
LinearLayout
,带有EditText
s列表。Android自动为我处理IME操作:IME\u action\u NEXT
用于所有EditText
s,但最后一个除外,它是IME\u action\u DONE
现在,我想通过编程将最后一个EditText
的IME操作也设置为IME\u action\u NEXT
,并将下一个EditText
的ID设置为重点(第一个,允许用户在所有字段上“循环”)。但当我这样做的时候:
int firstEditTextId = ...
valueView.setNextFocusDownId(firstEditTextId);
lastEditText.setImeOptions(EditorInfo.IME_FLAG_NAVIGATE_NEXT);
lastEditText.setImeActionLabel("Go to the first one, please", EditorInfo.IME_ACTION_NEXT);
它不起作用:在我的Android 7.1设备上,屏幕键盘上仍然显示“完成”图标。如何执行此操作?您可以尝试将其设置为上次编辑的文本:
android:nextFocusForward="@+id/firstEditText"
你可以尝试使用
lastEditText.setImeOptions(EditorInfo.IME_ACTION_NEXT);
而不是
lastEditText.setImeOptions(EditorInfo.IME_FLAG_NAVIGATE_NEXT);
我希望这能解决您的问题。您可以尝试将其设置为上次编辑的文本:
android:nextFocusForward="@+id/firstEditText"
你可以尝试使用
lastEditText.setImeOptions(EditorInfo.IME_ACTION_NEXT);
而不是
lastEditText.setImeOptions(EditorInfo.IME_FLAG_NAVIGATE_NEXT);
我希望这能解决您的问题。IME操作下一步仅在软键盘启动后两个字段都可见时起作用。IME操作下一步仅在软键盘启动后两个字段都可见时起作用。