我有一个注册表形式的多个EditTexts。问题是,当我单击按钮时,它仅显示第一个EditText的验证消息。填写第一个EditText的数据并再次单击“提交”按钮后,它仅显示第二个Edittext的错误。

有没有办法一次向所有人显示消息?

最佳答案

您需要这样的方法:

public boolean allFieldsAreFine(){
    boolean allFieldsAreFine = true;

    if (!isValidField(editText1.getText().toString())){
        allFieldsAreFine = false;
        editText1.setError("Invalid field.");
    }
    if (!isValidField(editText2.getText().toString())){
        allFieldsAreFine = false;
        editText2.setError("Invalid field.");
    }
    .
    .
    .
    if (!isValidField(editTextN.getText().toString())){
        allFieldsAreFine = false;
        editTextN.setError("Invalid field.");
    }

    return allFieldsAreFine;
}


我希望你能理解我的想法。

08-04 02:45