Dav*_*vid 3 android android-edittext
text.addOnTextChanged(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
if (s.length() == 4 || s.length() == 9 || s.length() == 14) {
text.append("-");
}
}
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,该代码不起作用。我将它简化为它应该是什么的核心。理想情况下,您会看到“1234-5678-1234-5678”作为输出,因为我最多取 16 位数字。我开始使用它text.setText(s.toString() + "-"),然后在可运行的帖子中,将选择设置为s.length() + 1,但 append 会为您处理。此外,在几毫秒内,您可以看出由于setText之前setSelection生效,光标回到了开头。
为什么不起作用?
您的 xml edittext 声明中的输入类型不应为“数字”。像这样用 digit 交换 inputType:
android:digits="0123456789 -."
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1862 次 |
| 最近记录: |