Closed. This question is opinion-based。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
                        
                        5年前关闭。
                                                                                            
                
        
首先,我应该承认我对iOS编程是完全陌生的,并且想为我整天在搜索的问题找到答案。
     我将拥有一个包含约500个较小尺寸的png格式图像的应用程序。如何在应用程序内按类别存储这些图像?从我学到的


我可以创建一个plist并使用字符串映射图像(但如果数据变得庞大,很多人不建议这样做)
创建一个手动文件夹并存储图像(不确定如何执行此操作。)


我已经看到了很多有关如何从Web甚至从相机下载和保存图像的代码,但是不确定什么是存储应用程序本身的最佳方法。带有示例代码的任何建议都将非常有帮助。

最佳答案

您正在下载图像吗?这些图像会改变吗?每个图片是否都有很多元数据(您提到过按类别存储它们)。

虽然这不是实现它的唯一方法,但我已经很幸运使用CoreData模型(具有Imagecategory作为属性的filename实体)来实现类似的事情。您可以将图像存储在NSBundle或任何您喜欢的位置,只要它们在同一目录中就可以使您轻松使用。然后,确保每个文件名都是唯一的,并且正确映射到CoreData实体。

这样,您还可以随时允许发送更多图像甚至替换它们。下载新图像后,无需添加任何plist或映射,即可将新实体添加到CoreData。您还可以使用CoreData fetchRequest访问NSPredicates,这将使您可以查询CoreData查找属于1个类别甚至几个类别的图像。

缺点是它需要额外的设置,即学习CoreData并将其实现到您的项目中。

编辑:

对于现在就做的非常基础的事情,答案很容易实现。将文件夹添加到目录中,并确保它们具有捆绑包中的目标文件夹。从那里添加一个pList,该列表为每个类别列出您感兴趣的每个图像的文件名。

然后,当他们在应用程序中单击某个类别时,您将拉出plist并获取名称列表作为字典/数组。然后,您加载所有图像。

不利的一面是您必须手动更新plist以进行任何新更改,然后将其从服务器发送到手机。

10-08 05:33
查看更多