将按钮单击时的编辑文本输入类型限制为字符

时间:2016-12-10 09:51:14

标签: android validation android-edittext

我有一个EditText,我在扫描QR扫描后输入了一个10位数的手机号码。有时我会在EditText中找到字符。在这种情况下,我想将Toast消息显示为“不接受字符”。

点击按钮时会弹出Toast。我该怎么做呢?提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用TextUtils.isDigitsOnly(CharSequence str)

yourButton.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        if(!yourEditText.getText().toString().equals("")) {
            boolean digitsOnly = TextUtils.isDigitsOnly(yourEditText.getText());
            if (!digitsOnly) {
                Toast.makeText(TestActivity.this, "Characters are not accepted", Toast.LENGTH_SHORT).show();
            }
        } else {
            Toast.makeText(TestActivity.this, "Please fill the field", Toast.LENGTH_SHORT).show();
        }
    }

});

请注意,此方法会返回true空字符串:Issue 24965

查看原始SO线程here