如果EditText中的用户键输入错误,如何设置错误消息?

时间:2012-09-27 09:14:02

标签: android android-edittext validation messages

我有一个应用程序,其中有EditText框。我已经为用户输入的内容设置了validatin。但我想设置错误信息,如果他输入了错误的输入,我不知道该怎么做。

这些是edittext

的验证码
EditText txtDislikes = (EditText) findViewById(R.id.txtDislikes);
        txtDislikes.setHint("e.g. Skating, Photography separate by comma");
        txtDislikes.setFilters(new InputFilter[] {
                new InputFilter() {

                    @Override
                    public CharSequence filter(CharSequence source, int start,
                            int end, Spanned dest, int dstart, int dend)
                    {
                        if(source.equals(""))
                        {
                            return source;
                        }
                        if(source.toString().matches("[a-z A-Z -]+"))
                        {
                            return source;
                        }
                        return "";
                    }

                }
            });

我试图在

中键入source.setError("ONLY LETTERS ARE ALLOWED");
if(source.equals(""))
                        {
                            return source;
                        }
                        else
                        {
                            source.setError("ONLY LETTERS ARE ALLOWED");
                        }
                        if(source.toString().matches("[a-z A-Z -]+"))
                        {
                            return source;
                        }
                        else
                        {
                            source.setError("ONLY LETTERS ARE ALLOWED");
                        }
                        return "";

但我有错误说“方法setError(String)未定义CharSequence类型”。不确定那是什么意思。

另外,我找不到任何好的例子。我们将非常感谢您提供的任何帮助或示例。谢谢!

1 个答案:

答案 0 :(得分:1)

类型setError()没有CharSequence方法。

请参阅TextView.setError(),您应setError()而不是txtDislikes {/ 1}}。