如何在Android中立即反映setBackground

时间:2017-04-17 21:03:31

标签: android events onclick

我在Android中开发了一个测验应用程序。 我想展示关于单一活动的所有问题。当用户选择一个选项时,如果正确,则设置颜色为绿色,如果为假,则将颜色设置为红色。并获得新的问题和选择。我在onClick事件上编写了代码:

public void onClickChoice(View v)  {
    String text = ((TextView) v).getText().toString();

    if (text == currentAnswer) {
        v.setBackgroundColor(getResources().getColor(newGreen));
    } else {
        v.setBackgroundColor(getResources().getColor(newRed));
    }

    setNewQuestion();
}

在运行申请书的时候,回答了第1个问题,第2个问题来了,第2个问题的选择的颜色被改变了。 我该怎么做才能解决这个问题。

3 个答案:

答案 0 :(得分:0)

为什么不尝试使用课程中实现的setOnClickLisenter();

答案 1 :(得分:0)

使用

 v.setBackgroundResource(R.color.red); //or green, blue,...

原始答案:here

答案 2 :(得分:0)

这是在列表还是回收者视图中?

如果是这样,每个视图都会被回收,因此您需要在每个视图启动时专门设置背景颜色。