我使用TextWatcher更改按下的键值。我的目标是在打字时替换一些字符。例如当我键入键时,如果达到“S”字符,用“a”字符替换它。我的问题是:我应该在beforeTextChanged吗?怎么样?任何人都可以给我一个例子吗?替换TextWatcher中的字符android
4
A
回答
1
使用beforeTextChanged将不会有用,因为它不会中断EditText实际键的打印。我会使用类似的东西:
public void afterTextChanged(Editable s) {
if(s.length() > 0 && s.toString().charAt(s.length()-1) == 'S')
{
final String newText = s.toString().substring(0, s.length()-1) + "a";
editText.setText(newText);
}
}
我加了一些的toString()的,不是100%肯定我是如何工作的编辑,但认为应该覆盖它。
-1
@Override
public void afterTextChanged(Editable arg0) {
Editable ab = new SpannableStringBuilder(arg0.toString().replace("S", "a"));
arg0 = ab ;
}
+0
重新分配本地变量对原始可编辑值没有任何影响! – user2878850 2017-09-19 19:08:23
7
我知道这个帖子是一对夫妇岁,但两个版本并没有为我工作,具有建设两个答案之间的混合体。
@Override
public void afterTextChanged(Editable editable) {
if (editable.toString().contains(",")) {
Editable ab = new SpannableStringBuilder(editable.toString().replace(",", ""));
editable.replace(0, editable.length(), ab);
}
}
相关问题
- 1. 在Android的TextWatcher中替换键入的字符
- 2. 如何替换Android中的字符串?
- 3. 替换android中的字符串?
- 4. 替换字符串中的变量替换错误的字符
- 5. 替换方法不是替换字符串中的字符
- 6. 用Android中的anotherString替换特殊字符字符串
- 7. 用android中的字符串中的另一个字符替换字符?
- 8. Android EditText字段和TextWatcher
- 9. Android的替换字符串不工作
- 10. 替换字符串中的字符
- 11. 替换字符串中的字符
- 12. 替换字符串中的字符
- 13. 替换字符串中的字符
- 14. 替换字符串中的字符
- 15. VBA - 替换字符串中的字符
- 16. 字符串中的字符串替换
- 17. 替换字符串中的字符
- 18. Postgres替换字符串中的字符
- 19. 替换字符串中的字符Java
- 20. 字符替换字符串中的
- 21. 字符串中的替换字符
- 22. 替换字符串中的字符,Java
- 23. 替换字符串中的SOH字符
- 24. Java - 替换字符串中的字符
- 25. 替换Java字符串中的'\'字符
- 26. 字符串中的字符替换
- 27. Java - 替换字符串中的字符
- 28. 替换字符串中的字符?
- 29. Javascript替换字符中的字符*,+和//
- 30. 替换Powershell中的'字符
尝试使用'afterTextChanged'代替beforeTextChanged'的'在EditText上 – 2013-03-27 07:36:22
替换字符我试图做到这一点,但我不能得到我想要的。你可以给我一个例子吗? – Fcoder 2013-03-27 07:37:36
PLZ解释更多如果你正在使用afterTextChanged和你想获得更多帮助,你会得到什么 – 2013-03-27 07:40:10