edittext에서 한 문자 만 허용하는 시나리오가 있습니다. 하나 개의 문자가 입력되면 그렇게 onTextChanged 내가 체크 한 후 나는 다음 글고edittext 길이가 꽉 찬 경우 OnTextChanged가 호출되지 않습니다.
<EditText
android:id="@+id/etpinPassword1"
style="@style/Edittext_with_weight"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="1" />
에 포커스를 전환하고 여기에 내는 textWatcher 코드 :
onTextChanged : ->
if (isValueEntered(charSequence)) {
etpinPassword2.requestFocus();
etpinPassword2.setEnabled(true);
appendPassword(charSequence);
}
private boolean isValueEntered(CharSequence charSequence) {
return charSequence.length() > 0;
}
다 onTextChanged가 호출 된 적이없는 이미 편집 된 텍스트로 돌아 왔을 때를 제외하고는 정상적으로 작동합니다. 첫 번째 것이 이미 가득차면 다음 edittext로 초점을 전환 할 수 있도록 다시 호출하고 싶습니다.
두 번째 방문시 채워진 편집 문구에서 텍스트를 삭제 하시겠습니까? –
어떻게 채워진 EditText로 돌아갈 예정입니까? 초점이 다시 맞춰 졌는지 확인하십시오. 또한 텍스트를 변경하지 않으면 메소드가 호출되지 않습니다. –
텍스트를 변경 한 리스너에서 조작을 입력하십시오. –