2017-08-17 230 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