当前位置: 代码迷 >> Android >> 如何用程序去判断图片资源名为pic3 小弟我就调用R.drawable.pic3
  详细解决方案

如何用程序去判断图片资源名为pic3 小弟我就调用R.drawable.pic3

热度:217   发布时间:2016-05-01 21:27:11.0
怎么用程序去判断图片资源名为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……
  相关解决方案