java.lang.IndexOutOfBoundsException:setSpan(5 ... 5)结束于设备返回按钮按下时超出长度0

时间:2018-08-19 14:09:04

标签: java android

按Back时出现错误“ java.lang.IndexOutOfBoundsException: setSpan (5 ... 5) ends beyond length 0”,我不明白在哪里出现此错误。当我通过“设备后退”按钮并进入片段页面(FragmentPageA)时,会发生此错误。如果我通过点击菜单进入同一页面(FragmentPageA),我不会得到相同的错误。

    08-19 17:00:42.119 1252-1252/com.shidhin.ts E/UncaughtException: java.lang.IndexOutOfBoundsException: setSpan (5 ... 5) ends beyond length 0
        at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:1265)
        at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:684)
        at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:677)
        at android.text.Selection.setSelection(Selection.java:76)
        at android.widget.TextView.semSetSelection(TextView.java:11549)
        at android.widget.EditText.setSelection(EditText.java:118)
        at android.widget.NumberPicker$SetSelectionCommand.run(NumberPicker.java:2246)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6776)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)
08-19 17:00:42.388 1252-1252/com.shidhin.ts E/AndroidRuntime: FATAL EXCEPTION: main
        Process: com.shidhin.ts, PID: 1252
        java.lang.IndexOutOfBoundsException: setSpan (5 ... 5) ends beyond length 0
        at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:1265)
        at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:684)
        at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:677)
        at android.text.Selection.setSelection(Selection.java:76)
        at android.widget.TextView.semSetSelection(TextView.java:11549)
        at android.widget.EditText.setSelection(EditText.java:118)
        at android.widget.NumberPicker$SetSelectionCommand.run(NumberPicker.java:2246)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6776)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)

这是“活动”页面上的我的后按代码,

@Override
public void onBackPressed() {
    if (drawerLayout.isDrawerOpen(menuLayout))
        drawerLayout.closeDrawer(menuLayout);
    else {
        if (getFragmentManager() != null && getFragmentManager().getBackStackEntryCount() != 0) {
            getFragmentManager().popBackStack();
        } else
            showExitConfirmationDialog();
    }
} 

1 个答案:

答案 0 :(得分:3)

好像其他人遇到了同样的问题here

NumberPicker.setSaveFromParentEnabled(false);       
NumberPicker.setSaveEnabled(false);