1

我有可编辑的,我在它上面执行替换而TextWatcher.onTextChanged() 不像这样触发,其中 ed 是我的可编辑:

Object[] o = ((SpannableStringBuilder)ed).getSpans(0,contStr.length(),TextWatcher.class);
((SpannableStringBuilder)ed).removeSpan(o[1]);
SpannableStringBuilder test = ((SpannableStringBuilder)s).replace();// I replace whatever was typed here, like re-rendering
((SpannableStringBuilder)ed).setSpan(o[1],0,contStr.length(),SpannableStringBuilder.SPAN_INCLUSIVE_INCLUSIVE);

现在,当我快速键入时,我TextWatcher.onTextChanged()为 Charsequence 提供了错误的参数。

如果我输入 TEST 真的很快,

TextWatcher.onTextChanged()给我T TTE TTETES TTETESTEST

不过,如果我慢慢打字,重新渲染效果很好。请建议如何进行重新渲染。

4

0 回答 0