以下代码:
View inflate = inflater.inflate(R.layout.page, null);
Drawable img = getResources().getDrawable((Integer) (item.get("img")));
inflate.findViewById(R.id.page_img).setBackground(img);
产生以下错误:
java.lang.NoSuchMethodError: android.view.View.setBackground
我不知道为什么。我已经用R.drawable.img
尝试了setBackground但是我得到了同样的错误。
答案 0 :(得分:10)
此方法是在API级别16中引入的,您很可能在较早的版本上运行:
使用setBackgroundDrawable()
答案 1 :(得分:2)
setBackground
方法,因此如果您在低于该值的情况下对其进行测试,则会给出NoSuchMethodError
答案 2 :(得分:1)
是的,请阅读api: http://developer.android.com/reference/android/view/View.html#setBackgroundResource(int)
你应该知道setBackground在16级时有效,所以你应该总是考虑一件事,那就是我应该使用1级方法......
希望这对你有所帮助。