【发布时间】:2014-02-23 02:28:02
【问题描述】:
我基本上做了一个类,用这个方法:
void setResource(Context context, R.id resourceID) {
ImageView test = (ImageView) context.findViewById(resourceID);
}
“findViewById”给了我一个无法解决的方法。 我在 XML 中定义了三个 ImageView,我想以编程方式设置与它们关联的图像。在我的 main_activty 中,我使用:
ImageView blah = (ImageView) this.findViewById(R.id.blah);
然后:
blah.setImageResource(R.drawable.pony);
但是,我想将所有内容传递给我创建的类并让它处理自定义类中的所有内容,但是当我尝试传递所有内容(最顶部的代码;“setResource”)时,我得到了 findViewByID无法解决方法。有没有办法做到这一点?
【问题讨论】:
-
findViewById 找不到可绘制对象。它在布局中查找视图。此外,drawable 不一定在 ImageView 中。它们在 Drawables 中。您可以使用 xml 或以编程方式为可绘制对象创建 ImageView,但两者是不同的概念。我认为您对自己想做什么感到困惑,并且对这个问题感到困惑,以至于我无法猜测您真正需要做什么。
-
为清晰起见进行了编辑。我喝了几杯啤酒。道歉。
标签: android class methods findviewbyid