否则,如果循环不验证语句中的变量

时间:2012-10-12 08:00:21

标签: android loops

循环我的一个循环结构时出现问题。

我从我的数据库中获取了Question实例,并且该实例的一个字段是Attempts。我从我的设备中取出了数据库并检查了它,并且列尝试的所有字段都填充了大于0的整数。

int initialAttempts = 0;
initialAttempts = c.getInt(6);
q.setAttempts(initialAttempts);

并在我的自定义数组适配器中:

if (mView != null) {

    int attempts =  getItem(position).getAttempts();
    int correctAnswer = getItem(position).getAnswerCorrect();
    triangle.setVisibility(View.INVISIBLE);

    if(correctAnswer == 1) { 
        triangle.setVisibility(View.VISIBLE);
    }
    else if (correctAnswer != 1 && attempts > 0) { 
        triangle.setVisibility(View.VISIBLE);
        triangle.setImageResource(R.drawable.trianglered);
    }

所以问题是它从不显示三角形。如果我放下&& attempts > 0,它确实显示了三角形,所以我认为错误就在那里。奇怪的是,如果我在getItem(position).getAttempts之前将尝试初始化为1,它仍然没有显示三角形。

出现问题的任何想法?

1 个答案:

答案 0 :(得分:0)

getItem(position).getAttempts()方法返回0.没有其他变体。为什么它返回0是你的问题。更喜欢调试而不是问这样的问题。

PS。无需在correctAnswer != 1语句中检查else if。已经在if中检查了相反的陈述,这是错误的。