【发布时间】:2013-12-26 05:58:09
【问题描述】:
TextWatcher 的 onTextChanged 方法中的 count 参数的行为取决于是否为编辑文本设置了 android:inputType 属性。
如果设置了输入类型,它会给我输入的新字符数,而不是编辑文本中的总字符数,如果没有设置输入类型,那么它会给我编辑文本中的字符总数。
这是一个错误还是我在这里遗漏了什么?
【问题讨论】:
TextWatcher 的 onTextChanged 方法中的 count 参数的行为取决于是否为编辑文本设置了 android:inputType 属性。
如果设置了输入类型,它会给我输入的新字符数,而不是编辑文本中的总字符数,如果没有设置输入类型,那么它会给我编辑文本中的字符总数。
这是一个错误还是我在这里遗漏了什么?
【问题讨论】:
onTextChanged 方法中的计数给出了输入的新字符的计数。因此设置android:inputType 的行为是正确的。
为了获得总字符长度,请在 onTextChanged 方法中使用s.length()。
count 给出编辑文本中总字符长度的奇怪行为可能是由于编辑文本的某些完整选择/建议造成的。
【讨论】:
我上传了一个例子,你甚至可以下载它(link)。在editText中用户最多可以输入10个字符。当用户输入/删除字符时,总长度将在textview中输出。
android:inputType set is correct. In order to get the total characters length use s.length() inside the onTextChanged method
【讨论】: