当前位置: 首页 > 面试题库 >

如何在Android中使用InputFilter限制EditText中的字符?

卜存
2023-03-14
问题内容

我想将字符限制为0-9,az,AZ和空格键。设置输入类型I可以限制为数字,但是我无法弄清Inputfilter在文档中查找的方式。


问题答案:

我在另一个论坛上找到了这个。像冠军一样工作。

InputFilter filter = new InputFilter() {
    public CharSequence filter(CharSequence source, int start, int end,
            Spanned dest, int dstart, int dend) {
        for (int i = start; i < end; i++) {
            if (!Character.isLetterOrDigit(source.charAt(i))) {
                return "";
            }
        }
        return null;
    }
};
edit.setFilters(new InputFilter[] { filter });


 类似资料:
  • 问题内容: 在应用程序的Java部分中创建EditText时,如何将其限制为与xml中一样的数字?例如: 设置像 问题答案: 大概是这样吗?

  • 问题内容: 我正在尝试编写一个可帮助你管理财务的应用程序。我正在使用一个字段,用户可以在其中指定金额。 我将设置为可以正常使用,除了允许人们输入数字(例如,这对金钱而言并不完美)之外,它设置得很好。 有没有办法将小数点后的字符数限制为两个? 问题答案: 这是一个示例InputFilter,它仅允许在小数点前最多4位,在小数点后最多1位。 价值观是允许的EditText:555.2,555,0.2

  • 问题内容: 我有一个这样的editTexts数组: 我希望每个字符都大写。现在,第一个单词的首字母是小写,然后所有字符后单词都是大写。我可以接受用户输入后的内容,然后将其转换为大写,但这并不是我想要的。有没有办法让这些字段按照我希望它们的方式运行? 问题答案: 您还需要从“类”文本中告诉它: 该输入类型是位掩码。您可以通过将|组合标记。中间的(竖线)字符代表OR逻辑功能,即使在这样的位掩码中使用时

  • 问题内容: 如何限制在JTextField中输入的字符数? 假设我要输入最多5个字符。此后,不能输入任何字符。 问题答案: 然后 (谷歌的第一个结果)

  • 我想把我的标签限制为10个字符,我是一个完全的编程新手,所以这是我到目前为止的第三个月了。。。无论如何,提前谢谢:-)

  • 我正在尝试实现一个仅将输入限制为大写字符[A-Z0-9]和数字。 我从某篇文章开始使用InputFilter方法。但我在三星Galaxy Tab 2上遇到了一个问题,但在模拟器或Nexus 4上没有。 问题是这样的: 当我键入“A”时,文本显示为“A”很好 现在,当我键入“B”时,文本应该是“AB”,但它给了我“AAB”,这看起来很奇怪 简而言之,它重复字符 以下是我正在使用此代码的代码: 文件代