2013-04-16 4 views
2

J'ai cette activité dans laquelle je veux valider les field.This de mot de passe de confirmation est mon code-:confirmation de validation de mot de passe dans Android

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); 
     } 

    } 
}); 

Maintenant, même après avoir tous deux du champ edittext être même il me montre toujours le dialogue d'alerte que les mots de passe ne correspondent pas. Veuillez m'aider ici. Merci d'avance.

Répondre

9

Vous ne pouvez pas comparer les chaînes en utilisant = ou !=, utilisez equals à la place

else if(!conpass.getText().toString().equals(pass.getText().toString())) 
+0

grâce Nunu ... ça a marché. :-) – user218554

1

Essayez cette fonction:

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; 
} 
0

se réfèrent ceci pour obtenir la moindre idée sur la manipulation de ce

sa simple filtration

en if état, il vérifie old password et new password ne sont pas null ou empty et vérifie tous les deux ne sont pas même dans d'autre si new password et old password ne sont pas null ou empty et vérifie les longueurs sont égales et vérifie les deux chaînes sont égales

Vous pouvez choisir cela si vous préférez une simple validation

@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(); 
     } 
    } 
+0

Alors que cet extrait de code est la bienvenue et peut fournir de l'aide, il serait [grandement améliorée si elle inclu ded une explication] (// meta.stackexchange.com/q/114762) de * comment * et * pourquoi * cela résout le problème. Rappelez-vous que vous répondez à la question pour les lecteurs dans le futur, pas seulement pour la personne qui demande maintenant! S'il vous plaît [modifier] votre réponse pour ajouter une explication, et donner une indication des limites et des hypothèses qui s'appliquent. –

Questions connexes