android - 如何在代码中动态更改 mipmap 文件夹中的图像而不使用 "direct description"?

标签 android mipmaps

我在 mipmap 文件夹中有很多不同大小的图像(超过 200 个),并且我需要在 ImageView 中动态设置图像...但是如何在我的 R 代码中没有“直接描述”的情况下执行此操作。 mipmap.*int 文件? mipmap 文件夹中有标志图像,我的对象有自己的字符串字段“flagCountry”,由两个字符组成。 mipmap 文件夹中的标志名称由相同的字符组成。那么,这是一个麻烦 - 如何从 flagCountry 字符串变量动态设置 setImageResource(R.mipmap.XXX) ? 我在“反射(reflection)”中思考这个决定,但这怎么可能呢? ))请帮忙

最佳答案

您可以使用Resources.getIdentifier()查找给定名称的资源的整数 ID。这就像 Android 资源的反射。

int id = getResources().getIdentifier("XXX", "drawable", getPackageName());

或者类似的东西。这假设代码位于 Activity 中。然后您可以使用该 id 调用 setImageResource(id)

关于android - 如何在代码中动态更改 mipmap 文件夹中的图像而不使用 "direct description"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35811356/

相关文章:

java - 为什么我的 jsonarray 结果只将一条记录存储到数组中?

java - 检查当前时间是否在一个时隙之间

ios - iOS glGenerateMipmap 是同步的,还是可能是异步的?

opengl - GPU 手动 Mipmap 生成 [OpenGL 2.x]

opengl - glTexImage2D 与 gluBuild2DMipmaps

android - 在 Android 应用程序的 JSON 中包含小图像

java - 在类之间传递数组值

java - 尝试实现库时如何修复 list 合并失败错误?

android - 为什么 mipmap 文件夹不显示在 XML Android Studio 的建议中?

java - 书中旧示例对 Android Studio 中的 drawable 和 mipmap 的混淆