ANDROID:如果Statement未产生预期结果

时间:2018-12-17 06:10:02

标签: android

我有一个名为tblclients的数据库,其中有一个名为email verify的列,该列生成0或1。0表示未验证,而1表示已验证。但是,在android studio中实现if语句不会产生预期的结果。

这是我的代码:

    textfullname.setText(SharedPrefManager.getInstance(ProfileActivity.this).getUser().getFirstName()+" "+SharedPrefManager.getInstance(ProfileActivity.this).getUser().getLastName());
    textCompname.setText(SharedPrefManager.getInstance(ProfileActivity.this).getUser().getCompanyName());
    textEmailad.setText(SharedPrefManager.getInstance(ProfileActivity.this).getUser().getEmail());

    int verification = SharedPrefManager.getInstance(ProfileActivity.this).getUser().getEmail_verified();
    if (verification == 0) {
        verifyemailad.setText("Email Un-verified");


    }
    if (verification == 1) {
        verifyemailad.setText("Email Verified");

    }

    int verifycolor = SharedPrefManager.getInstance(ProfileActivity.this).getUser().getEmail_verified();
    if (verifycolor == 0) {
        linearVerified.setBackgroundColor(getResources().getColor(R.color.red_A700));

    }
    if (verifycolor == 1) {
        linearVerified.setBackgroundColor(getResources().getColor(R.color.light_green_A700));
    }

}

实现此代码并运行代码后,即使已验证登录用户,我也会看到红色背景,并且电子邮件未验证。对于经过验证的用户,预期结果必须显示绿色背景,并带有“通过电子邮件验证的文本”;对于未验证的用户,其结果必须显示红色背景,具有“未经验证的电子邮件”。

这是屏幕截图:

Screenshot of results regardless of email verification status

有人可以告诉我做错了什么吗?

1 个答案:

答案 0 :(得分:-1)

很有可能您的验证字段为空。您可以尝试在分配后先将其打印出来,也可以放置else语句以捕获其他看不见的意外结果。