Android:访问Android中的本地资源列表

发布于 2024-11-25 01:46:26 字数 406 浏览 1 评论 0原文

如何访问我的项目“res/drawables”下的可绘制对象列表?我是 Android 新手,我见过这样的例子:

Field[] drawables = android.R.drawable.class.getFields();
for (Field f : drawables) {
    try {
        System.out.println("R.drawable." + f.getName());
    } catch (Exception e) {
        e.printStackTrace();
    }
}

但这列出了所有默认的可绘制对象,而不是我想要的:( 我想访问这些文件并让它们的名称生成 xml,因为我的布局将是动态的(数字绘图可能会不时发生变化)

感谢您的帮助。

How can I access the list of drawables under my project "res/drawables"? Im new to Android I've seen an example like this:

Field[] drawables = android.R.drawable.class.getFields();
for (Field f : drawables) {
    try {
        System.out.println("R.drawable." + f.getName());
    } catch (Exception e) {
        e.printStackTrace();
    }
}

But this lists all the default drawables, not what I want:( I want to access those files and have their names to generate an xml, because my layout will be dynamic (number of drawables may differ from time to time).

Thanks for any help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

别忘他 2024-12-02 01:46:26

代替

android.R.drawable.class.getFields();

用于

your.application.package.R.drawable.class.getFields();

访问您的绘图。

Replace

android.R.drawable.class.getFields();

with

your.application.package.R.drawable.class.getFields();

to access your drawables.

沦落红尘 2024-12-02 01:46:26

您可能需要 Context.getResources...

访问资源

You are probably wanting Context.getResources...

Accessing Resources

私野 2024-12-02 01:46:26

一个建议是遵循所有可绘制对象的命名约定。假设在它们前面加上您的应用程序名称“app”。

for(Field f:drawables){
    if(f.getName().startsWith("app")){
       //Your drawable.
    }
}

One suggestion would be to follow a naming convention for all your drawables. Say prefix them with your app name 'app'.

for(Field f:drawables){
    if(f.getName().startsWith("app")){
       //Your drawable.
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文