在if else语句中添加intent代码

时间:2017-07-27 03:34:04

标签: java android

我正在尝试使用以下意图代码添加if else语句,以便在显示toast消息后登录成功时重定向 if(password.equals(storedPassword)){但我收到“无法解决构造函数错误。

Intent intent = new Intent(this,HomeActivity.class);     startActivity(意向);

if (password.equals(storedPassword)) {
                Toast.makeText(MainActivity.this, "Login Successful", Toast.LENGTH_LONG).show();
                dialog.dismiss();


            } else {
                Toast.makeText(MainActivity.this, "Username or Password incorrect.", Toast.LENGTH_LONG).show();
            }
        }
    });
像这样

if (password.equals(storedPassword)) {
                Toast.makeText(MainActivity.this, "Login Successful", Toast.LENGTH_LONG).show();
                dialog.dismiss();
Intent intent = new Intent(this, HomeActivity.class);
    startActivity(intent);



            } else {
                Toast.makeText(MainActivity.this, "Username or Password incorrect.", Toast.LENGTH_LONG).show();
            }
        }
    });
  1. 我有一个在预览中可见的ImageView,但未在模拟器中显示。我已经清理/构建项目并同步gradle文件。可能是什么问题?

3 个答案:

答案 0 :(得分:4)

你是否使用匿名内部类?然后this引用内部类而不是活动。改为使用它(就像你对吐司一样):

Intent intent = new Intent(MainActivity.this, HomeActivity.class);
startActivity(intent);

答案 1 :(得分:0)

将您的意图定义更改为:

Intent intent = new Intent(MainActivity.this, HomeActivity.class);

我看看你如何调用你的吐司,我推断你的代码行是在内部类中,所以要引用你的活动上下文,你需要使用MainActivity.this

答案 2 :(得分:0)

将此替换为当前活动,为了更好的体验,alwyas使用try和catch块来实现此类意图