我对安卓应用程序开发很陌生。目前,我正在做简单的安卓测验应用程序,有 10 个问题。
我的默认选项按钮颜色是白色。当用户回答三个选项中的问题时,我想通过更改选项按钮颜色(通过在setOnClickListener方法中使用setBackgroundcolor(向他们显示所选选项。
但我的问题是,我的第一个问题选择选项颜色也来到第二个问题,也没有选择答案。我不知道如何在每次迭代时取消背景颜色。
提前谢谢!!
Option1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
selected_option = 0;
question_id = 1;
Option1.setBackgroundColor(R.color.Yellow);
updateSelectedAnswer(selected_option, question_id);
}
});
我们可以定义 ColorStateList 资源。
您可以使用以下内容(根据需要随意更改颜色(:
在res/color/button_background_selector.xml
中创建文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="@android:color/red" /> <!-- pressed -->
<item android:state_focused="true"
android:color="@android:color/blue" /> <!-- focused -->
<item android:state_hovered="true"
android:color="@android:color/green" /> <!-- hovered -->
<item android:color="@android:color/yellow" /> <!-- default -->
</selector>
然后,按如下方式使用它:
<Button
...
android:background="@color/button_background_selector" />
当您显示下一个问题之前更改按钮的颜色时,如下面的代码... 选项1.设置背景颜色(R.color.white(;