如何访问res/drawable/“文件夹”

发布于 2024-12-06 11:45:07 字数 275 浏览 0 评论 0原文

在我的应用程序中,我有很多图片,我将它们分组在 res/drawable 下的文件夹中。但 Android 不允许我通过“R”访问它们。有没有办法访问这些文件夹。

这是我使用的代码。

    ImageView iv = new ImageView(conext);
    iv.setImageResource(R.drawable.**smiley.666**);

我标记了我无法访问的部分。

谢谢提前

野生动物园

On my application I have many pictures which I have grouped in folder under res/drawable. But Android dosen't let me access them trough "R". Is there a way to access those folders.

This is the Code im using for.

    ImageView iv = new ImageView(conext);
    iv.setImageResource(R.drawable.**smiley.666**);

I marked the part which I can't access.

Thx in Advance

safari

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

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

发布评论

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

评论(5

暮色兮凉城 2024-12-13 11:45:07

不可以,Android 不允许在 /res/drawable 下存在子文件夹:Android 可绘制目录可以包含子目录吗?

但是,您可以在 /drawable 下添加所有图像文件,然后通过以下方式以编程方式访问它们:

int drawableID = context.getResources().getIdentifier("drawableName", "drawable", getPackageName());
iv.setImageResource(drawableID);

其中 drawableName 是可绘制文件的名称,即 myimage(如果图像文件为 myimage.jpg)。

上面的代码将获取ID为R.drawable.drawableName的图像资源。

No, Android does not allow subfolders under /res/drawable: Can the Android drawable directory contain subdirectories?

You can however, add all image files under /drawable and then access them programmatically via:

int drawableID = context.getResources().getIdentifier("drawableName", "drawable", getPackageName());
iv.setImageResource(drawableID);

Where drawableName is a name of the drawable file, i.e. myimage if image file is myimage.jpg.

The code above will get image resource with id R.drawable.drawableName.

土豪我们做朋友吧 2024-12-13 11:45:07

R.drawable.xxx 只是 Android SDK 在 R.java 文件中生成的引用。您正在尝试在 res 文件夹中创建一个子文件夹。 SDK 无法生成对任何子文件夹的引用,您必须将其放入预定义文件夹drawable-hdpi、-ldpi 和-mdpi 中。
如果您不知道这是如何工作的。我总结一下。 Android 可以在许多具有不同屏幕分辨率的不同设备上运行。通过这三个文件夹,您可以在三种分辨率下获得相同的图片,并且根据运行应用程序的设备,将使用这三个文件夹之一。您可以在这里阅读更多内容:
http://developer.android.com/guide/practices/screens_support.html

R.drawable.xxx is just a reference that the Android SDK generates in your R.java file. You are trying to make a sub-folder in your res-folder. The SDK can't generate a reference to any of your sub-folders, you have to put it in the predefined folders drawable-hdpi, -ldpi and -mdpi.
If you dont know how this works. I'll sum up. Android runs on a lot of different devices with a lot of different screen resolutions. With these three folders, you can have the same picture in three resolutions and depending on the device you are running your app on, one of these three folders will be used. You can read more here:
http://developer.android.com/guide/practices/screens_support.html

揽清风入怀 2024-12-13 11:45:07

您无法在 res/drawable 中创建文件夹,系统无法识别这些文件夹。

You can't create folders in res/drawable the system doesn't recognize those.

背叛残局 2024-12-13 11:45:07

你需要先保存你的图像,然后为它们创建一个 xml,这样你就可以通过 R.your_pics 访问它

you need to save your image first and then make a xml for them so you can access it through R.your_pics

江湖彼岸 2024-12-13 11:45:07
context.getResources().getDrawable(R.drawable.progressbar1);

Android - 从 @drawable String 打开资源

context.getResources().getDrawable(R.drawable.progressbar1);

Android - Open resource from @drawable String

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文