在Android工作室即時通訊作出一個簡單的用戶名和密碼代碼,如果用戶名和密碼編輯文本視圖中的值都是特定值(例如「蛋糕」和「機器人」 )但是當我測試它並輸入正確的用戶名和密碼值時,我被告知我輸入了錯誤的匹配?簡單的用戶名密碼代碼在Android不工作
這裏是主要的活動
public class MainActivity extends AppCompatActivity {
EditText usernameET;
EditText passwordET;
Button SignIn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
usernameET = (EditText) findViewById(R.id.username);
passwordET = (EditText) findViewById(R.id.password);
SignIn = (Button) findViewById(R.id.signin);
}
public void SignIn(View view) {
String username = usernameET.getText().toString();
String password = passwordET.getText().toString();
if(username == "cake" && password == "robot"){
Toast.makeText(this, "You Signed In", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "Invalid Login", Toast.LENGTH_SHORT).show();
}
}
}
主要業務佈局:
<EditText
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/password"
android:layout_alignStart="@+id/password"
android:layout_marginBottom="15dp"
android:hint="@string/username"
android:inputType="text" />
<EditText
android:id="@+id/password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:hint="@string/password"
android:inputType="text" />
<Button
android:id="@+id/signin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sign_in"
android:onClick="SignIn"
android:layout_below="@+id/password"
android:layout_centerHorizontal="true" />
這究竟是爲什麼?
,而不是 「==」 使用 「.equals」 來比較兩個字符串 – sumit
嘗試username.equals( 「蛋糕」)&& password.equals (「機器人」)處於if狀態 –