【问题标题】:android integer text as ressourceandroid整数文本作为资源
【发布时间】:2017-02-04 09:07:19
【问题描述】:

是否可以避免将图像存储在数据库中并将它们放入可绘制或 mipmap 文件夹中?然后我想在数据库中只引用资源并这样称呼它:

String image = "R.mipmap.image1";        //This will be the data retrieved from Database
int imageInt = Integer.parseInt(image);
imgview.setImageRessource(imageInt);

实际上我想在 RecyclerView 中使用它,所以我在这里简化了示例代码,但这向我显示了以下错误

java.lang.NumberFormatException: Invalid int: "R.mipmap.image1"

谢谢

【问题讨论】:

  • 在谷歌上搜索将字符串转换为可绘制,而不是在此处发布您的确切问题
  • mipmap 不是存储图形资源的正确位置。只有应用程序图标必须位于 mipmap 文件夹中。是的,如果您愿意,您可以从drawable 文件夹中检索图像。显然,不是通过使用Integer.parseInt()

标签: android reference integer


【解决方案1】:

一种简单的方法是将图像名称存储在数据库中(即您的示例中的“image1”)。然后稍后使用图像名称获取它的标识符,如下所示:

int imageId=context.getResources().getIdentifier("imageName","mipmap",context.getPackageName());

现在,您可以使用此 imageId 将图像设置为图像视图。

imgview.setImageRessource(imageId);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    相关资源
    最近更新 更多