-3

我使用eclipse制作了一个android应用程序。我有 editText 框来验证为电子邮件。这个editText 显然是在XML 中,它的id 是“editText1”。我找到了如何验证电子邮件的答案,但我的问题是:我不知道如何将其应用于我的 java 代码中的“editText1”。

Below i present the code for email validation that i found:

   public final Pattern EMAIL_ADDRESS_PATTERN = Pattern.compile(
            "[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" +
            "\\@" +
            "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" +
            "(" +
            "\\." +
            "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" +
            ")+"
        );

    private boolean checkEmail(String email) {
        return EMAIL_ADDRESS_PATTERN.matcher(email).matches();
}

当我将此代码粘贴到我的 java 文件中时,我收到以下消息:

“从不在本地使用 MainActivity 类型的方法 checkEmail(string)”

4

1 回答 1

2

您必须参考您的 EditText

像这样的东西应该工作:

EditText et = (EditText) findViewById(R.id.editText1);

然后你可以像这样从你的 EditText 获取文本:

String str = et.getText().toString();

然后你可以调用你的验证方法

if(checkEmail(str)){
  //email is valid
}

但是,根据您提出的问题以及您提出问题的方式,我可以告诉您,在您深入研究 android 之前,您可能会从回去学习纯 java 中受益匪浅。一旦你掌握了 java 语法,你应该从官方 Android 开发者网站上的示例和教程开始,它涵盖了很多你似乎难以理解的基础知识。

最后一点,“editText1”对于您的 EditText 来说不是一个很好的名称,它没有解释有关该对象的任何内容。如果您努力为对象使用更具描述性的名称,您的代码将更容易使用,也许“emailText”可能是更好的选择?

于 2013-02-11T21:25:28.937 回答