android中Edittext的初始空间验证

时间:2014-07-31 08:31:20

标签: android android-edittext

当用户输入第一个字符作为空格即“”时,如何设置EditText的验证。 但是我想在所有其他情况下使用空间。只有第一个字符不应该是空格。 如果用户输入空格,我将禁用SEND按钮,否则将启用SEND按钮。

你可以建议吗?我尝试使用TextWatcher的onTextChanged方法。但它没有按预期工作。

感谢。

2 个答案:

答案 0 :(得分:2)

请尝试使用以下代码:

mUiEditText.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {

        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
            if (charSequence.toString().startsWith(" ")) {
                //disableButton(...)
            } else {
                //enableButton(...)
            }

        }

        @Override
        public void afterTextChanged(Editable editable) {

        }
    });

答案 1 :(得分:0)

它应该与TextWatcher一起使用,你是否尝试过类似的东西:

input.addTextChangedListener(new TextWatcher() {

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {}

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {}

    @Override
    public void afterTextChanged(Editable s) {
        String text = s.toString();
        if(text.charAt(0) == ' ')
            button.setClickable(false);
        else
            button.setClickable(true);
    }
});