我有一些按钮,我想在点击时更改背景颜色。作为测验应用程序,如果单击错误的应用程序,它们将变为红色;如果单击了正确的应用程序,则为绿色。我还想在切换问题时将按钮重置为默认值,以重复选择答案的过程。
我的问题是我去实施时:
buttonOne.setBackgroundResource(android.R.drawable.btn_default);
buttonTwo.setBackgroundResource(android.R.drawable.btn_default);
buttonThree.setBackgroundResource(android.R.drawable.btn_default);
buttonFour.setBackgroundResource(android.R.drawable.btn_default);
应该将按钮重置为默认值(对吗?)。现在,当我点击按钮并按住它们时,背景是橙色的,我不知道为什么。有谁知道这是为什么?
我没有将任何东西设置为橙色,所以它看起来很随机。
答案 0 :(得分:1)
您使用的资源可能是一组具有"活动"的抽屉。一套,像这样:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/bar_bottom_home_active" android:state_pressed="true"/>
<item android:drawable="@drawable/bar_bottom_home"/>
</selector>
当您按住按钮时,这将解释不同的颜色。
答案 1 :(得分:0)
尝试这样说:
buttonOne.setBackgroundColor(YOUR_COLOR_HERE);
在颜色中,首选将其添加到颜色的xml文件中并引用它
答案 2 :(得分:0)
首先,您需要创建一个xml文件。例如:
<color name="orange">#FF9900</color>
<color name="green">#009900</color>
<color name="blue">#000099</color>
<color name="red">#bf360c</color>
现在,您可以使用颜色。
buttonOne.setBackgroundColor(getResources().getColor(R.color.green));