Response Lister JSONObject上的嵌套IF语句

时间:2016-06-07 16:31:20

标签: android json

我正在为我的登录活动使用Response Listener和JSONObject。我是Android的新手,所以我想知道我做的事情是否正确,因为我的应用程序无法正常工作。我的登录活动应该能够识别用户是普通用户还是管理员。

这是我的代码:

Response.Listener<String> responseListerner = new Response.Listener<String>() {

@Override
public void onResponse(String response) {

    try {
        JSONObject jsonResponse = new JSONObject(response);
        boolean user = jsonResponse.getBoolean("user");
        boolean admin = jsonResponse.getBoolean("admin");

        if (admin) {
            //load Admin Activity here
        }else if (user) {
            //load User Activity here
        } else {
            AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this);
            builder.setMessage("Incorrect username or password")
                    .setNegativeButton("Retry", null)
                    .create()
                    .show();
        }

    } catch (JSONException e) {
        e.printStackTrace();
    }
}
};

如果我删除其中一个(管理员或用户),我的代码将有效。这是正确的,我只是在我的代码中遗漏了一些东西?或者我不能拥有if和else if?有没有更好的方法可以做到这一点?任何帮助或提示将不胜感激。

0 个答案:

没有答案