java - 达到maxLength后如何更改最后一个数字
问题描述
在 EditText 上,我使用 android:maxLength="3" 数字仅作为 .xml 中的输入但是当达到限制并且用户继续单击数字保持不变。
当用户继续点击时,我想更改最后一位数字。
示例:用户在第 4 次单击“0”= 450 时单击 3 个数字 = 456(前 2 个数字保持不变,但最后一个数字会随着每次点击而改变,直到他确认该数字)
解决方案
最后我自己找到了答案,这是适合我的解决方案。
在我使用 .append(在屏幕上显示数字)之前的 onClick() 方法中,我插入了小的辅助方法 checkLength() 来检查和限制超过 3 个数字。
在 .java 文件中:
private void checkLength() {
Editable editable = mNumber.getText();
int charCount = editable.length();
if (charCount > 2) {
editable.delete(charCount - 1, charCount);
}
在 .xml 文件中:
<EditText
...
android:maxLength="3"
... />
推荐阅读
- javascript - 带有选择选项菜单的 React Hooks/Functional Component 抱怨违反“Hooks 规则”
- json - 从两个纯文本文件中收集键和值
- c# - SQLite C#插入一个无符号整数存储一个负数
- html - Bootstrap:导航栏在滚动时收缩
- reactjs - axios 在获取请求之前删除/
- javascript - 创建用于显示数据的下拉选择框
- angular - Ionic Angular - 如何将时间戳转换为简单的日期格式
- user-interface - volume_up 和 volume_down 图标之间的转换
- conda - 可用于 conda 的 shebang 线是什么样的?
- firebase - Flutter Firestore 使用特定键写入数据