2014-05-08 4 views
-1

pour un petit projet android je fais un loginscreen. J'ai des variables mais elles restent vides une fois que je les remplis et j'appuie sur le bouton.Le texte ne change pas dans la variable après avoir appuyé sur le bouton dans Android

ce sont mes variables:

private EditText email; 
private EditText wachtwoord; 
private Button loginButton; 

ici, je les remplis:

 email = (EditText)findViewById(R.id.emailInput); 
     wachtwoord = (EditText)findViewById(R.id.wachtwoordInput); 
     loginButton = (Button)findViewById(R.id.loginButton); 

     } 
} 

et ma méthode wich exécute alway le code de capture

public void login(View view) 
    { 

     try { 

     if(email.getText().toString() == "[email protected]" && wachtwoord.getText().toString() == "admin") 
     { 
      Toast.makeText(getApplicationContext(), "gelukt", Toast.LENGTH_SHORT).show(); 
     } 
     else 
     { 
      Toast.makeText(getApplicationContext(), "mislukt", Toast.LENGTH_SHORT).show(); 
      loginButton.setEnabled(false); 
     } 

merci à l'avance

+7

utilisation 'equals()' pour comparer des chaînes 'email.getText() toString() est égal à (.. "[email protected]") ' – Raghunandan

+0

Je suis un peu confus pourquoi ces gars donnent la réponse l'un après l'autre, quand raghunandan est déjà écrit dans le commentaire, Et la réponse étrange est la même que le commentaire. –

Répondre

0

Modifier cette ligne:

if(email.getText().toString() == "[email protected]" && wachtwoord.getText().toString() == "admin") 

à ceci:

if(email.getText().toString().equals("[email protected]") && wachtwoord.getText().toString().equals("admin")) 
0

Comparez les prix anneaux à l'aide de l'une de ces méthodes

procédé

1:

if(((email.getText().toString().compareTo("[email protected]")==0) && (wachtwoord.getText().toString().compareTo("admin")==0)) 
{ 
    do something 
    } 

Méthode 2:

if(((email.getText().toString().equals("[email protected]"))&& (wachtwoord.getText().toString().equals("admin"))) 
    { 
    do something 
    } 
+0

J'ai essayé ce code et mon application continue d'exécuter le code de capture car les variables sont vides. – Jopie95

0
public void login(View view) 
    { 

     try { 

     if(email.getText().toString() .equals ("[email protected]") && wachtwoord.getText().toString().equals("admin")) 
     { 
      Toast.makeText(getApplicationContext(), "gelukt", Toast.LENGTH_SHORT).show(); 
     } 
     else 
     { 
      Toast.makeText(getApplicationContext(), "mislukt", Toast.LENGTH_SHORT).show(); 
      loginButton.setEnabled(false); 
     } 

Essayez le code ci-dessus. Utilisez .equals() au lieu de == Pour comprendre la différence entre les deux, lisez this.

+0

Je ne sais pas comment ça se passe mais il continue d'exécuter la méthode catch. – Jopie95

0
if(email.getText().toString().equalsIgnoreCase("[email protected]") && wachtwoord.getText().toString().equalsIgnoreCase ("admin")) 
     { 
      Toast.makeText(getApplicationContext(), "gelukt", Toast.LENGTH_SHORT).show(); 
     } 
     else 
     { 
      Toast.makeText(getApplicationContext(), "mislukt", Toast.LENGTH_SHORT).show(); 
      loginButton.setEnabled(false); 
     } 
Questions connexes