Я получаю ошибку «java.lang.IndexOutOfBoundsException», возникающую, когда пользователь нажимает на FAB, чтобы добавить таймер, или нажимает на цифровую кнопку TimerEditActivity.Это происходит исключительно на Android 8.0.Я пробовал разные подходы, но на самом деле не знаю, как это исправить.
void onClick(TextView view) {
if (mFocusGrabber.isFocused())
return;
EditText field = getFocusedField();
int at = field.getSelectionStart();
field.getText().replace(at, at + 1, view.getText()); //LINE 116, causing the error
field.setSelection(at + 1);
// updateStartButtonVisibility();
if (field.getSelectionStart() == FIELD_LENGTH) {
// At the end of the current field, so try to focus to the next field.
// The search will return null if no view can be focused next.
View next = field.focusSearch(View.FOCUS_RIGHT);
if (next != null) {
next.requestFocus();
if (next instanceof EditText) {
// Should always start off at the beginning of the field
((EditText) next).setSelection(0);
}
}
}
}
Это трассировка стека из Play Console.Линии 116, кажется, виновником.
at android.text.SpannableStringBuilder.checkRange (SpannableStringBuilder.java:1309)
at android.text.SpannableStringBuilder.replace (SpannableStringBuilder.java:510)
at android.text.SpannableStringBuilder.replace (SpannableStringBuilder.java:504)
at android.text.SpannableStringBuilder.replace (SpannableStringBuilder.java:502)
at be.demillennial.oneclock.timers.EditTimerActivity.onClick (EditTimerActivity.java:116)
at be.demillennial.oneclock.timers.EditTimerActivity$$ViewBinder$7.doClick (EditTimerActivity$$ViewBinder.java:92)
at butterknife.internal.DebouncingOnClickListener.onClick (DebouncingOnClickListener.java:22)
at android.view.View.performClick (View.java:6891)
at android.widget.TextView.performClick (TextView.java:12651)
at android.view.View$PerformClick.run (View.java:26083)
at android.os.Handler.handleCallback (Handler.java:789)
at android.os.Handler.dispatchMessage (Handler.java:98)
at android.os.Looper.loop (Looper.java:164)
at android.app.ActivityThread.main (ActivityThread.java:6938)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)