如果我想将一系列图像放在文件夹结构中,例如... 我正在开发一个海滩应用程序,并且每个海滩都通过我的海滩列表中选择的海滩显示在我的海滩详细信息活动中。然后,我想显示从该特定海滩获取的五张图像。每个海滩都将有一个名称与海滩的 _id 相对应的文件夹,然后在该文件夹中有五个图像,image1.jpg、image2.jpg... image5.jpg。为了最好/最容易的方式,我应该将文件夹和图像放在 /res/raw 文件夹还是 /assets 文件夹中?谢谢,Mike.
Assets允许您创建子目录(将文件分组到目录中),请注意它们没有名称限制,但是只能通过包含list()用于列出给定目录下的文件和open()用于获取文件InputStream的Assets Manager进行访问。
相反,资源允许您访问文件夹中的文件,但是您无法创建子文件夹,此外,您必须将文件放在正确的位置,因此位图位于/res/drawable
,布局xml位于/res/layout
等。由于资源具有标识符,因此易于其他代码部分访问。
由于您希望使用res/raw
文件夹,这意味着您无法在其中创建子文件夹,并且您的图像不会被压缩,因此将它们放置在未压缩状态并考虑到将有很多图像,那么您的应用程序将会有点沉重。
以下是两个可能对您有帮助的链接:WiseAndroid和提供资源 - 开发人员指南
在将图像添加到应用程序时,您应该将它们放置在“res/drawable”中。该文件夹用于存放不特定于任何dpi级别的图像。为了获得最佳效果,您应该拥有每个图像的三种尺寸,并将它们放置在各自的dpi文件夹中,例如“res/drawable-hdpi”用于高分辨率图像。这是文档中一个很好的部分,可以阅读资源和设备兼容性。
drawable
相当于 drawable-mdpi
,你不应该在那里放置大尺寸的图片,因为它们会在 hdpi
及以上被放大。你要找的文件夹是 drawable-nodpi
。 - Daniel