Java EditText.getText().toString()与其他字符串的比较失败
祝酒词一直说访问被拒绝,即使我填写了正确的pin 我需要将用户锁定到kiosk模式的应用程序中,只有使用正确的pin,他们才能访问设置和退出选项Java EditText.getText().toString()与其他字符串的比较失败,java,android,string,android-edittext,tostring,Java,Android,String,Android Edittext,Tostring,祝酒词一直说访问被拒绝,即使我填写了正确的pin 我需要将用户锁定到kiosk模式的应用程序中,只有使用正确的pin,他们才能访问设置和退出选项 public void onClick(View v) { AlertDialog.Builder alert = new AlertDialog.Builder(FullscreenActivity.this); alert.setTitle("PIN:");
public void onClick(View v) {
AlertDialog.Builder alert = new AlertDialog.Builder(FullscreenActivity.this);
alert.setTitle("PIN:");
//alert.setMessage("Message");
final EditText pinEntry = new EditText(FullscreenActivity.this);
alert.setView(pinEntry);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String pin = pinEntry.getText().toString().trim();
String secret = "0000";
if (pin == secret){
Toast.makeText(getApplicationContext(),"Access Approved", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(getApplicationContext(),"Access Denied", Toast.LENGTH_SHORT).show();
}
Toast.makeText(getApplicationContext(),pin, Toast.LENGTH_SHORT).show();
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
});
alert.show();
}
});
==参考等式测试
.equals测试值相等。字符串与equals或equalsIgnoreCase进行比较,而不是与您正在使用的双equals==进行比较。如果if语句对cap敏感,请将其从ifpin==secret更改为ifpin.equalsecret;如果大小写不重要,请将ifpin.equalsIgnoreCasesecret更改为ifpin.equalsecret。请尝试pin.equalsecret,而不是“pin==secret”
public void onClick(DialogInterface dialog, int whichButton) {
String pin = pinEntry.getText().toString().trim();
String secret = "0000";
if (pin.equalsIgnoreCase( secret)){
Toast.makeText(getApplicationContext(),"Access Approved", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(getApplicationContext(),"Access Denied", Toast.LENGTH_SHORT).show();
}
Toast.makeText(getApplicationContext(),pin, Toast.LENGTH_SHORT).show();
}
});