3

我有这个活动,我想验证确认密码字段。这是我的代码-:

nt.setOnClickListener(new OnClickListener() { 

    public void onClick(View v) { 

         if(email.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("E-mail field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(pass.getText().toString().equals("")){

            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Password  field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });

            alertDialog.show();
        }

        else if(conpass.getText().toString()!= pass.getText().toString() ){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Passwords do not match");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(name.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Name field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(dob.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Date of birth field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(address.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Address field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(city.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("City field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(zip.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Zip field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(phone.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Phone No. field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }
        else if(mobile.getText().toString().equals("")){
            AlertDialog alertDialog = new AlertDialog.Builder(Registration.this).create();
            alertDialog.setTitle("oops!");
            alertDialog.setMessage("Mobile No field is empty");
            alertDialog.setButton("Ok",
            new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                      //dismiss the dialog  
                    }
                });
            alertDialog.show();
        }

        else{

            String mail = email.getText().toString();

            String pas = pass.getText().toString();

            String fname = name.getText().toString();

            String dateob = dob.getText().toString();

            String add12 = address.getText().toString();

            String tow = city.getText().toString();

            String zip1 = zip.getText().toString();

            String mob = mobile.getText().toString();

            String phn = phone.getText().toString();

            Intent per = new Intent(getApplicationContext(), Register2.class);
            per.putExtra("email", mail);
            per.putExtra("name", fname);
            per.putExtra("password", pas);
            per.putExtra("mobile", mob);
            per.putExtra("phone", phn);
            per.putExtra("address", add12);
            per.putExtra("zip", zip1);
            per.putExtra("city", tow);
            per.putExtra("dateofbirth", dateob);
            startActivity(per);
        }

    }
});  

现在,即使我的两个edittext字段都相同,它仍然向我显示密码不匹配的警报对话框。请在这里帮助我。提前致谢。

4

3 回答 3

11

您不能使用=or比较字符串!=equals而是使用

else if(!conpass.getText().toString().equals(pass.getText().toString()) )
于 2013-04-16T07:09:41.617 回答
1

试试这个功能:

public boolean isPasswordMatching(String password, String confirmPassword) {
    Pattern pattern = Pattern.compile(password, Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(confirmPassword);

    if (!matcher.matches()) {
        // do your Toast("passwords are not matching");

        return false;
    }

    return true;
}
于 2015-05-06T14:14:22.643 回答
0

参考这个以获得处理这个的线索

它的简单过滤

if条件下它检查old passwordnew password不是nullempty和检查两者都不相同在否则如果new passwordold password不是nullempty和检查两个长度相等并验证两个字符串相等

如果您喜欢简单验证,可以选择此选项

    @Override
    public void afterTextChanged(Editable s) {

        System.out.println(s.toString());
        String oldPass = oldPassword.getText().toString();
        String newPass = newPassword.getText().toString();
        String confirmPass = confirmPassword.getText().toString();
        if (!oldPass.equals("") && !newPass.equals("") && oldPass.equals(newPass)) {
            Toast.makeText(getContext(), "Choose Different Password than Old Password", Toast.LENGTH_SHORT).show();
        }
        else if (!newPass.equals("") && !confirmPass.equals("") && !newPass.equals(confirmPass) && newPass.length()==confirmPass.length())
        {
            Toast.makeText(getContext(), "Choose same as New Password", Toast.LENGTH_SHORT).show();
        }
    }
于 2017-02-20T12:06:38.137 回答