gpt4 book ai didi

Android访问drawable文件夹

转载 作者:行者123 更新时间:2023-11-29 17:47:14 26 4
gpt4 key购买 nike

我在 drawable 文件夹中放置了 10 张图像,并创建了一个自定义类,其中的实例包含一个 id Integer,该 id 整数应该将其引用到 draw 文件夹中的图像。现在我想知道如何一次设置这些 id-s,而不是一个一个地设置。相反:

object[0].setImage(R.drawable.image1);
object[1].setImage(R.drawable.image2);

我想用循环来做这个,但是怎么做呢?

最佳答案

众所周知,

Drawable id 是在 final class R 的静态类中生成的。所以直接用反射读取这些静态属性的值就可以了。如果您想获取 Int id,请使用此代码:

    for(Field f : R.drawable.class.getDeclaredFields()){
if(f.getType() == int.class){
try {
int id = f.getInt(null);
// read the image from the id
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IllegalArgumentException e){
e.printStackTrace();
}
}
}

或者,如果您想直接通过图像名称进行搜索,您可能会对以下字段的名称属性感兴趣:

    for(Field f : R.drawable.class.getDeclaredFields()){
if(f.getType() == int.class){
try {
String name = f.getName();
// rest of the code handling file loading
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
}

关于Android访问drawable文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25632984/

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