0

我正在研究一个看起来像数字键盘的布局。

我在我的文件夹里四处寻找:

C:\Program Files\Android\platforms\android-8\data\res\drawable-mdpi

我发现了一些我可以使用的可绘制对象,例如 sym_keyboard_feedback_ok 或 sym_keyboard_num(1-9) :)

在此处输入图像描述

但是当我输入

android.R.drawable。

没有以 sym_keyboard.. 开头的可绘制对象。

如何在不手动将它们复制到我的资源文件夹的情况下访问这些可绘制对象?

4

1 回答 1

1

好吧,我一直在寻找同样的东西,但后来我意识到所有 R.drawables 都无法访问。如果您查看android.R.drawable参考,您将找不到您正在寻找的那些项目。此示例还在列表中显示了所有可访问的可绘制对象,这可能很有用。

在给定的示例中,有一个 for 循环,如果您以下列方式更改循环的间隔,您可能会找到这些项目(在我的例子中,我看到以 sym_keyboard 开头的可绘制对象):

for (int idx = 17301504; idx <= 17303380; idx++) {
        data = new HashMap<String, Object>();
        try {
            String stg = Resources.getSystem().getResourceName(idx);
            data.put("line1", stg);
            data.put("line2", idx);
            data.put("img", idx);
            resourceNames.add(data);
        }
        catch (Resources.NotFoundException nfe) {
        }
    }

最后,不建议使用这种方法,因为不同 API 中的 drawable 引用可能不同,所以我被迫将我最喜欢的 drawable 复制到项目中并将它们用作常规 drawable。

带有 ics 4.0 的 HTC Sensation 上的 Drawable

于 2012-09-05T09:53:21.440 回答