2017-08-17 228 views
-2

在我的自定义EditText我想将光标定位在插入的文本结束时,如果前,但由于某种原因IndexOutOfBoundsException抛出没有任何文字资料。为setSelection定制的EditText抛出IndexOutOfBoundsException异常

​​

线

setSelection(text.length()); 

抛出异常。我想在这一点上,案文应在EditText上可用但有时它似乎是不存在

异常

java.lang.IndexOutOfBoundsException:setSpan(2 ... 2 )在android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:683) 在android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java在android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:1320) 结束超出长度为0 :676) at android.text.Selection.setSelection(Selection.java:76) at android.text.Selection.setSelection(Selection.java:87) at android.widget.EditText.setSelection(EditText.java:103) at com.thpeaklab.ibanedittext.IbanEditTextView $ 1.run(IbanEditTextView.java:87 ) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) 在android.app.ActivityThread.main(ActivityThread.java:6121) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java: (ZygoteInit.java:779)`

回答

0

我认为它的工作原理

text = text.substring(0, start); 
mEditPass.setText(text); 
mEditPass.setSelection(start); 
+0

选择的setText()方法中应该发生。 – grumpyshoe