我想使用变量代替R.drawable.myimage,因为我有一个带有图像名称的数据库。我从数据库中获取名称,并且我想使用具有此名称的drawable资源。
String flagimage = "R.drawable." + myHelper.getFlagImage(5);
int resourceId = Integer.parseInt(flagimage);
Bitmap flag = BitmapFactory.decodeResource(getResources(), resourceId);
答案 0 :(得分:39)
您可以使用
等资源的名称 getIdentifier (String name, String defType, String defPackage);
getResources().getIdentifier("us","drawable","com.app");
上述函数将返回与R.drawable.us相同的整数值。
这是您使用资源名称访问的方式。
答案 1 :(得分:17)
您可以使用此代码获取标识符......
Resources res = this.getResources();
int resID = res.getIdentifier(imagename, "drawable", this.getPackageName());