2010-02-06 2 views
3

내 사용자가 나는 다음과 같은 그러나 그것은 무엇을 의미하는지 아무 생각이 무엇입니까 http://code.google.com/p/android-remote-stacktrace/java.lang.IndexOutOfBoundsException : getChars (7 ... 0) 끝 이전

를 통해 나에게 처리되지 않은 예외를 보내는 시작 있습니다.

java.lang.IndexOutOfBoundsException: getChars (7 ... 0) has end before start 
    at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:935) 
    at android.text.SpannableStringBuilder.getChars(SpannableStringBuilder.java:847) 
    at android.text.TextUtils.getChars(TextUtils.java:69) 
    at android.text.SpannableStringBuilder.<init>(SpannableStringBuilder.java:59) 
    at android.text.SpannableStringBuilder.subSequence(SpannableStringBuilder.java:839) 
    at android.widget.TextView.extractTextInternal(TextView.java:4541) 
    at android.widget.TextView.reportExtractedText(TextView.java:4580) 
    at android.widget.TextView.finishBatchEdit(TextView.java:4723) 
    at android.widget.TextView.endBatchEdit(TextView.java:4705) 
    at com.android.internal.widget.EditableInputConnection.endBatchEdit(EditableInputConnection.java:54) 
    at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:586) 
    at android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:174) 
    at com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:120) 
    at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:231) 
    at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:57) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:123) 
    at android.app.ActivityThread.main(ActivityThread.java:4338) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:521) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 
    at dalvik.system.NativeStart.main(Native Method) 

답변

3

Android 프레임 워크의 알려진 버그입니다. the issue에 대한 링크가 있습니다. 안드로이드는 커서 위치를 사용하여 ... 는 내가 해결 그렇게 선택을 설정을 couldnt 경우

textEntry.setSelection(textEntry.getText().length(), textEntry.getText().length()); 
+0

그것은 그러나 드로이드에서만 문제가이 버그는 늘 다른 휴대 전화에서 발생한다. – pgsandstrom

+1

어쨌든 try catch 블록을 사용하여이 오류를 잡을 수 있습니까? – jax

+0

범위가 354 .. 351과 비슷하면 다음과 같은 문제가 발생할 수 있습니다. https://code.google.com/p/android/issues/detail?id=61629 – andygeers

0

문제를 일으키는 라인 앞에 정확히 넣으십시오.

editor.setSelection(editor.getText().length(), editor.getText().length()); 
+0

나, 아직도 해결 방법을 찾고있다. – andygeers

1

: 사람이 여전히이 문제로 어려움을 겪고 당신의 활동의 onResume 그것을 해결할에 다음 코드를 배치

0

맞춤 textEntry로 수정했습니다. onSelectionChanged를 변경하고 loopj에서 코드를 삽입하십시오!

내 코드 :

@Override 
protected void onSelectionChanged(int selStart, int selEnd) { 
    if (selStart >= 0) { 
     super.onSelectionChanged(selStart, selEnd); 
    } else { 
     setSelection(getText().length()); 
    } 
}