通过xml文件以编程方式设置背景

时间:2012-02-21 21:06:43

标签: android drawable setbackground

我的xml布局中有一个ImageButton,如下所示:

<ImageButton android:id="@+id/tabsButton"
    android:background="@drawable/button" android:layout_height="48dp"       
    android:layout_width="48dp"></ImageButton>

如你所见,我在这里设置了ImageButton的背景:

   android:background="@drawable/button"

其中button是我放在drawable文件夹中的xml文件,下面是button.xml的代码:

 <?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:state_pressed="true"
    android:drawable="@drawable/duscrollover" /> <!-- pressed -->
    <item android:drawable="@android:color/transparent" /> <!-- default -->
 </selector>

直到现在,每件事情都还可以,并且工作正常,但现在我想在我的创建中以编程方式设置我的ImageButton的背景,所以我做到了这一点:

View myView  = findViewById(R.id.tabsButton);
myView.setBackgroundResource(R.drawable.button);

但是,它无法识别myView.setBackgroundResource(R.drawable.button)中的按钮 那么怎么能把xml文件的引用放在drawable文件夹中呢?

提前致谢

2 个答案:

答案 0 :(得分:2)

您是否收到无法找到资源的错误?如果是这样,请尝试清理项目并重新运行。

答案 1 :(得分:1)

如果你的项目R类被导入而不是android.R,你有没有检查导入?这可能发生: - )

二万