예 : 편집 텍스 트에 1을 입력 한 다음 동일한 편집 텍스트에 2를 입력 한 다음 manualy 1을 제거하고 싶지는 않지만 1에서 2로 직접 오버라이드하고 싶습니다. .edittext의 maxLength가 1 일 때 편집 텍스트의 텍스트를 덮어 쓰는 방법
예를 들어: 지금은 값 "1"편집에 입력 할 때
editTextOtpFirst.addTextChangedListener(this);
editTextOtpSecond.addTextChangedListener(this);
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (editTextOtpFirst.getText().length() ==1 && !checkEditTextEmpty(editTextOtpFirst)) {
editTextOtpSecond.requestFocus();
}
if (editTextOtpSecond.getText().length() ==1 && !checkEditTextEmpty(editTextOtpFirst)) {
editTextOtpThird.requestFocus();
}
}
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (v.getId() == R.id.editTextOtpThird) {
if (event.getAction() == KeyEvent.ACTION_UP) {
if (keyCode == KeyEvent.KEYCODE_DEL) {
editTextOtpSecond.requestFocus();
return true;
}
}
}
if (v.getId() == R.id.editTextOtpFourth) {
if (event.getAction() == KeyEvent.ACTION_UP) {
if (keyCode == KeyEvent.KEYCODE_DEL) {
editTextOtpThird.requestFocus();
return true;
}
}
}
if (v.getId() == R.id.editTextOtpSecond) {
if (event.getAction() == KeyEvent.ACTION_UP) {
if (keyCode == KeyEvent.KEYCODE_DEL) {
editTextOtpFirst.requestFocus();
return true;
}
}
}
텍스트-1은 그 다음 편집으로 이동 커서 텍스트-2하지만 난에서 텍스트를 편집-1의 값을 변경하려면 "1"을 "4"로 지정하지만 수동으로 "1"을 제거한 다음 다른 값을 입력해야합니다.하지만이 작업을 원하지 않습니다 ... 다른 유형을 입력 할 때 "1"에서 "4" 편집 텍스트의 값.
하지만 이미 편집 텍스트에있는 텍스트를 덮어 쓰고 싶습니다. 편집 텍스트에 두 번째로 입력하면 이전 텍스트가 자동으로 덮어 쓰기됩니다.이 질문은 내 답변입니다. – khushbu