首页 > 解决方案 > 达到maxLength后如何更改最后一个数字

问题描述

在 EditText 上,我使用 android:maxLength="3" 数字仅作为 .xml 中的输入但是当达到限制并且用户继续单击数字保持不变。

当用户继续点击时,我想更改最后一位数字。

示例:用户在第 4 次单击“0”= 450 时单击 3 个数字 = 456(前 2 个数字保持不变,但最后一个数字会随着每次点击而改变,直到他确认该数字)

标签: javaandroidxml

解决方案


最后我自己找到了答案,这是适合我的解决方案。

在我使用 .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"
    ... />

推荐阅读