无法访问Android中res/drawable文件夹内的图片

3

我是 Android 开发新手。为了实现一个照片库应用程序,教程说要将图片添加到 res/drawable 并通过 R.drawable.image1 等方式访问它们。但是在 Eclipse 中默认没有 drawable 文件夹,于是我创建了一个并添加了图片。但是无法访问图片,R.drawable 中没有 "image1" 这个选项。

有什么建议吗?

3个回答

3
您需要在“res”文件夹下创建一个名为“drawable”的文件夹,并将png图像文件放置在该文件夹中。当以编程方式访问这些图像文件时,例如为ImageView设置图像:
Drawable imgDrawable=getResources().getDrawable(R.drawable.yourImageFileName));
imgView.setImageDrawable(imgDrawable);

谢谢,我遇到了一个类似的菜单问题。在"/res/"文件夹里是否应该有一个默认的"menu"文件夹呢?我没有这样的文件夹,所以我自己创建了一个。但是我无法通过"R."访问它。但是当我创建一个drawable时,可以访问它。 - Subash Chaturanga

3
有时默认情况下不会创建drawable文件夹,而是会有“drawable-hdpi”、“drawable-mdpi”和“drawable-ldpi”。这些文件夹是为了放置支持不同分辨率的各种屏幕密度的图像。你的“drawable文件夹”是基准中等密度。
在你的情况下,在“res”下创建一个名为“drawable”的文件夹,并将你的图像放在该文件夹内,然后你就可以使用“R.id.imagename”来访问它。尝试刷新项目并检查是否已在res文件夹下创建了drawable文件夹。还要检查你所创建的文件夹名称的大小写。

非常感谢您的快速回复。我明白了。我没有直接将图像复制到那个文件夹中,而是将它们作为文件导入。因此它会保留一个引用。这就是为什么我无法访问R.drawable.image的原因。而且您是正确的。默认情况下我没有drawable文件夹,但有其他文件夹。 - Subash Chaturanga
它应该按照上述方式为您工作。还请注意,即使将其放在其他drawable文件夹(如mdpi、ldpi和hdpi)中,您也应该能够访问该图像。 - rogerstone

0

我遇到了同样的问题,但当我再次以jpg格式添加这些图像时,它就可以工作了。也许对你也有用。我的系统基于Windows 10,并使用Android Studio 4。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接