[android] imeOptions “actionNext”프로그래밍 방식-다음 필드로 이동하는 방법?

레이아웃 XML 에서 가상 키보드에 android:imeOptions="actionNext"추가 할 Next버튼 을 지정하고 이를 클릭하면 포커스가 다음 필드로 이동합니다.

프로그래밍 방식으로 수행하는 방법-예를 들어 이벤트 트리거 포커스를 기반으로 다음 필드로 이동하는 방법은 무엇입니까?



답변

IME 옵션에 EditorInfo 클래스의 상수를 사용할 수 있습니다. 처럼,

editText.setImeOptions(EditorInfo.IME_ACTION_NEXT);


답변

포커스 가능한 다음 필드를 검색하고 invoke requestFocus().

TextView nextField = (TextView)currentField.focusSearch(View.FOCUS_RIGHT);
nextField.requestFocus();


답변

당신이 사용하는 경우 그냥 제안

     EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE);

작동하지 않으면 EditText가 한 줄을 사용하고 있는지 확인하십시오.

예 :

       editTextSample.setSingleLine();


답변

가상 QWERTY키보드 에서 사용할 수있는 기본 키 외에 추가 키를 항상 추가해야합니다 .

XML 사용

<EditText android:text="@+id/EditText01"
android:id="@+id/EditText01"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:imeOptions="actionDone"/>

By Programmatic Way

An EditorInfo은 Android 애플리케이션에서 모든 유형의 사용자 입력을 처리해야 할 때 가장 유용한 클래스입니다.

IME_ACTION_DONE: 이 작업은 입력 할 내용이없는 경우 “완료”작업을 수행하고 IME가 닫힙니다.

 EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE);

자세한 내용은 http://developer.android.com/reference/android/view/inputmethod/EditorInfo.html을 참조하십시오.


답변

코 틀린 펜던트

editText.imeOptions = EditorInfo.IME_ACTION_DONE


답변

editText.setLines(1);
editText.setSingleLine(true);
editText.setImeOptions(EditorInfo.IME_ACTION_GO);

한 줄로 문제를 해결하고 Enter를 클릭하면 다음 editText로 이동합니다.


답변

제 경우에는 imeOptions를 설정하여 문제를 해결하십시오.

edtAnswer.maxLines = 1
edtAnswer.inputType = InputType.TYPE_CLASS_TEXT
edtAnswer.imeOptions = EditorInfo.IME_ACTION_NEXT