所以我有一个ListView,它根据列表中每个项目的优先级对图标进行颜色编码。例如,优先级为1的工作人员具有红色工作订单图标。优先级2 =黄色等
我使用ImageView.setColorFilter(Color.whatever)来改变图标的颜色,它在我的三星Galaxy Tab和HTC Hero上运行得很好,但是当我将应用程序加载到HTC Droid Eris上时,我收到一个错误:
java.lang.NoSuchMethodError:android.widget.ImageView.setColorFilter
我不知道为什么它在其他一切都能正常工作,但不是这款手机。有任何想法吗?我想也许可能是因为Eris有Android 2.1,而其余的是2.2或更高。但我不认为在2.2之前不包括这样一个基本方法!
非常感谢任何和所有帮助!当我被困难时,这个社区总是有帮助,谷歌不会吐回任何相关结果!提前谢谢!
答案 0 :(得分:4)
如果您查看documentation并按API版过滤,您会看到此重载:
void setColorFilter(int color)
是在API版本8中引入的,它是Android 2.2。
但是,之前还支持其他重载:
void setColorFilter(ColorFilter cf)
void setColorFilter(int color, PorterDuff.Mode mode)
您可以使用其中一种吗?
答案 1 :(得分:1)
setColorFilter(int color)
。
自1.0版以来,还存在另外两个版本的setColorFilter
,也许您可以使用这些版本?