gpt4 book ai didi

java - Android 从 drawable 加载图片

转载 作者:行者123 更新时间:2023-11-29 22:24:25 26 4
gpt4 key购买 nike

在我的 android 项目中,我在 drawable 文件夹中有几个图像,我想将它们加载到 HashMap 中:

示例:

PREFIX_G6.png
PREFIX_P7.png
PREFIX_P9.png

我可以像这样为特定图像构建位图:

String drawableName = "PREFIX_" + "G6"; // ignore the extension
int drawableId = context.getResources().getIdentifier(drawableName, "drawable", PACKAGE_NAME);
Bitmap icon = BitmapFactory.decodeResource(context.getResources(), drawableId);
mIcons.put(drawableName, icon); // my Hashmap

为了加载可绘制文件夹中的所有图像,我需要能够列出它们并测试它们是否以我的 PREFIX 开头_有什么想法吗?

最佳答案

如果这种情况是动态发生的,而不是硬编码值,那么速度会慢很多。

不过,您可以尝试在 R 类上使用 java 反射(警告:未经测试)

Class cls = R.drawable.class;
Field fieldlist[] = cls.getDeclaredFields();
for (Field fld : fieldlist) {
String fieldName = fld.getName();
if (fieldName.startsWith("PREFIX_") {
int drawableId = fld.getInt(null);
// do whatever with the drawable
}
}

关于java - Android 从 drawable 加载图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6318501/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com