当用户按下ok时,密码提示没有做任何事情

时间:2012-11-23 04:32:41

标签: android android-layout android-intent

我正在制作一个需要设置页面密码的程序。目前我正在做的是通过弹出一个带有文本字段和密码请求的警报。输入正确的密码(当前硬编码为“test”但将被更改)时,它应该启动设置活动,密码不正确会导致提示“不正确”。

目前,无论密码是对还是错,它都会关闭警报,没有任何消息或任何消息。

我正在学习,所以我确定我已经严重破坏了代码,有什么建议吗?

  public void Settings(View view) {
    final AlertDialog.Builder alert = new AlertDialog.Builder(this);

    alert.setTitle("Main User Only");
    alert.setMessage("Please enter password");

    // Set an EditText view to get user input 
    final EditText input = new EditText(this);
    alert.setView(input);

    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int whichButton) {
        String value = input.getText().toString();
      if (value == "test") 
     {Intent settings = new Intent(Bootscreen.this, ItemListActivity.class);
     startActivity(settings);}

      else
          if (!(value == "test")) { alert.setMessage("Incorrect");}}

    });

    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int whichButton) {
        // Canceled.
      }
    });

    alert.show();

}

2 个答案:

答案 0 :(得分:4)

使用

if (value.equals("test"))

而不是

if (value == "test") 

用于比较字符串

答案 1 :(得分:0)

您还可以使用.equalsIgnoreCase方法。在此,它还考虑使用空格来比较两个字符串。

您的代码如下所示

if (value.equalsIgnoreCase("test"))