读书人

如何用程序去判断图片资源名为pic3 小

发布时间: 2012-04-26 14:01:31 作者: rapoo

怎么用程序去判断图片资源名为pic3 我就调用R.drawable.pic3
RT, 怎么用程序去判断图片资源名为pic3 我就调用R.drawable.pic3

pic3 是我从数据库里面查询出来的图片名, 然后我就想调用程序中的图片来显示,该图片R.drawable.pic3

mybitmap = BitmapFactory.decodeResource(getResources(),R.drawable.picXXX);

同理,
pic2 我就调用 R.drawable.pic2


pic1 我就调用 R.drawable.pic1


不要告诉我用

Java code
if(picName.equals("pic1")) {  mybitmap = BitmapFactory.decodeResource(getResources(),R.drawable.pic1); }else if(picName.equals("pic2")) {  mybitmap = BitmapFactory.decodeResource(getResources(),R.drawable.pic2); }....



我有很多图片的,这样要累死我

[解决办法]
比如Drawable中有一系列连续的图片,img_0.png, img_1.png, img_2.png ...
如果要动态获取这些图片,通过"R.drawable.img_x"的ID方式指定是不行的,因为这个ID无法动态变化,即你是无法通过字符串拼接的方法来实现的。

但可以通过下面方式获取:
String imgname = "img_" + idx;
int imgid = getResources().getIdentifier(imgname, "drawable", "com.ucrobotics.xxx");
EditText.setBackgroundResource(imgid);

根据传递的idx的值不同,就可以动态的获取img_x所对应名称的图片资源了。
其中"com.ucrobotics.xxx"指的是你的package name,就是Java文件最开始一行的那个。
[解决办法]
探讨

比如Drawable中有一系列连续的图片,img_0.png, img_1.png, img_2.png ...
如果要动态获取这些图片,通过"R.drawable.img_x"的ID方式指定是不行的,因为这个ID无法动态变化,即你是无法通过字符串拼接的方法来实现的。

但可以通过下面方式获取:
String imgname = "img_" + idx;
int imgid = ge……

读书人网 >Android

热点推荐