我正在Eclipse中创建一个应用程序,但是我在应用程序中更改图像时遇到了一些问题。我有一个.xml文件,应该在我的应用程序中显示两个按钮。代码是:
<?xml version="1.0" encoding="utf-8"?>
<item android:drawable="@drawable/background_button_pressed" android:state_enabled="false" android:state_pressed="true"/>
<item android:drawable="@drawable/background_button_pressed" android:state_enabled="true" android:state_focused="true"/>
<item android:drawable="@drawable/background_button_normal" android:state_enabled="true"/>
现在我想替换其中一个图像,因为它的刻度错误。所以我用正确比例的新图像替换了background_button_pressed
。但是当我在模拟器和手机上运行应用程序时,它仍然显示旧的。为什么呢?
我尝试了以下内容:
检查每个可绘制文件夹,确保它没有位于多个位置并加载其中一个
我是Eclipse新手,这对我没有任何意义。
答案 0 :(得分:0)
尝试以下代码
<item android:drawable="@drawable/background_button_pressed" android:state_selected="true"/>
<item android:drawable="@drawable/background_button_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/background_button_normal"/>
如果要更改setEnable(false)的可绘制状态,则需要以下代码
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:drawable="@drawable/background_button_disabled"/>
<item android:state_pressed="false"
android:drawable="@drawable/background_button_normal" /> <!-- pressed -->
<item android:state_pressed="true"
android:drawable="@drawable/background_button_pressed" /> <!-- focused -->
<item android:state_enabled="true" android:drawable="@drawable/background_button_normal"/>