代码之家  ›  专栏  ›  技术社区  ›  Sparafusile

如何显示资源可提取文件列表[副本]

  •  17
  • Sparafusile  · 技术社区  · 14 年前

    这个问题已经有了答案:

    我希望在列表中显示所有资源可提取文件,以便用户可以选择一个。是否有任何方法可以循环遍历所有R.Drawable项,这样我就不必将它们硬编码到程序中了?

    2 回复  |  直到 11 年前
        1
  •  31
  •   Seidr    14 年前

    在drawable类上使用getfields方法,可以遍历整个drawables列表。

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

    参考文献: http://www.darshancomputing.com/android/1.5-drawables.html

        2
  •  0
  •   Jim Blackler    14 年前

    如果您查看生成的r.drawable对象,您将看到ID是连续的,在我的例子中(可能是您的),从0x7f02000开始。由于它们似乎是按alpha排序的,所以您可以添加虚拟图像aaaaa.png和zzzzzz.png,并在这两个ID之间进行独家迭代。

    我不能赞同你这样做的理由,但我认为那是可行的。