本文介绍了采用可变绘制资源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

我想用一个变量而不是R.drawable.myimage,因为我有一个形象的名称的数据库。我从数据库中获取的名字,我想用这个名字的绘制资源。

 字符串flagimage =R.drawable。 + myHelper.getFlagImage(5);
INT RESOURCEID =的Integer.parseInt(flagimage);
位图标志= BitmapFactory.de codeResource(getResources(),RESOURCEID);
 

解决方案

您可以使用资源的名称,比如

则getIdentifier(字符串名称,字符串DEFTYPE,字符串defPackage);

  getResources()则getIdentifier(我们,绘制,com.app)。
 

上面的函数将返回相同R.drawable.us一个整数值。

这是你如何访问资源名。

I want to use a variable instead of R.drawable.myimage because I have a database with the image's names. I get the name from the database and I want to use the drawable resource with this name.

String flagimage = "R.drawable." + myHelper.getFlagImage(5);
int resourceId = Integer.parseInt(flagimage);
Bitmap flag = BitmapFactory.decodeResource(getResources(), resourceId);
解决方案

You can use the name of a resource like

getIdentifier (String name, String defType, String defPackage);

getResources().getIdentifier("us","drawable","com.app");

The above function will return an integer value same as R.drawable.us.

This is how you access with resource names.

这篇关于采用可变绘制资源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-06 09:24