EditText 를 아마존에서 테스트했는데, 아래와 같은 메세지가 나왔어요
어떻게 해야 해결이 되나요?
고수님의 답변 부탁드립니다
스크린샷의 내용
입력하고 복사해서 붙여넣고,
여러번 하더니만 아래와 같은 에러메세지가 나와요
에러기종 : Samsung Galaxy S6 (T-Mobile)
Info
java.lang.IndexOutOfBoundsException: replace (0 ... -1) has end before start
// at android.text.SpannableStringBuilder.checkRange(Sp
annableStringBuilder.java:1087)
// at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:500)
// at android.text.SpannableStringBuilder.delete(SpannableStringBuilder.java:225)
// at android.text.SpannableStringBuilder.delete(SpannableStringBuilder.java:34)
// at android.view.inputmethod.BaseInputConnection.deleteSurroundingText(BaseInputConnection.java:246)
// at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:389)
// at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:78)
// at android.os.Handler.dispatchMessage(Handler.java:102)
// at android.os.Looper.loop(Looper.java:158)
// at android.app.ActivityThread.main(ActivityThread.java:7229)
// at java.lang.reflect.Method.invoke(Native Method)
// at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
// at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
//
Harness
01:07.49
1621
Failed
------------------------------------------------------
제가 제작한 소스, 아주 간단해요
TextWatcher txtwt = null;
txtwt = new TextWatcher(){
@Override
public void afterTextChanged(Editable s) {
Log.i("REACHES AFTER", "YES");
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
Log.i("REACHES BEFORE", "YES");
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
etTestMemo.removeTextChangedListener(txtwt);//after this line you do the editing code
// text.setText("TEST");
Log.i("REACHES ON", "YES");
etTestMemo.addTextChangedListener(txtwt); // you register again for listener callbacks
}};
EditText etTestMemo = = (EditText)findViewById(R.id.etTestMemo);
,,,
etTestMemo.addTextChangedListener(txtwt);
여러 기종들은 에러가 안나는데, 위의 삼성 기종 및 여러 기종에서 같은 에러가 나요
입력 복사하고 붙여넣기하는 과정중에서 에러가 발생해요
어떻게 예외처리를 해야 되나요?
고수님, 경험이 있으시면
고수님의 답변 부탁드립니다
수고하세요~