我有+300 png图片。他们的名字是这样的; aaa.png abka.png bxja.png daw.png。
根据我的setImage(String pictureName)函数,我想动态设置imageview View资源。
private void setImage(String pictureName){
myImgView.setBackgroundResource(R.drawable + picturename);
}
我的主要想法是这样的,但你可以看到它是不可能的。 我认为解决这个问题的是为所有+300图像创建开关状态,但实现这一点真的是非常大的努力。
我要问的是什么;是否有任何简单的方法来实现这一点。
答案 0 :(得分:0)
您应该使用此代码,假设函数setImage
是活动的成员
private void setImage(String pictureName)
{
int id = getResources().getIdentifier(pictureName,"drawable",getPackageName());
myImgView.setBackgroundResource(id);
}
答案 1 :(得分:0)
R.drawable + picturename
无效,因为R.drawable.picturename
实际上是一个引用您资源的整数。
但是,您可以使用Resources.getIdentifier来获取该整数。
然后你可以用输出
来调用setBackgroundResource()