我有可编辑功能,我在不触发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提供了错误的参数。
如果我真的很快输入T-E-S-T,
TextWatcher.onTextChanged()
正在给我
Ť
TTE
TTETES
TTETESTEST
如果我慢慢输入,重新渲染工作正常。请建议如何重新渲染。