Ios 加载50+;UIScrollview应用程序中文档目录中的图像发生崩溃
从UIScrollview应用程序的文档目录中加载了50多个图像,导致崩溃。获取“与资产的连接被中断或资产死亡(内存警告)”。有谁能建议加载这些图像的最佳方法吗?提前谢谢。我的代码在Objective-C中。在您的情况下,显示图像的最佳选项是使用UITableView或UICollectionView,因为当单元格不再显示在屏幕上时,它们会在内部将单元格出列。 .Ios 加载50+;UIScrollview应用程序中文档目录中的图像发生崩溃,ios,objective-c,uiscrollview,Ios,Objective C,Uiscrollview,从UIScrollview应用程序的文档目录中加载了50多个图像,导致崩溃。获取“与资产的连接被中断或资产死亡(内存警告)”。有谁能建议加载这些图像的最佳方法吗?提前谢谢。我的代码在Objective-C中。在您的情况下,显示图像的最佳选项是使用UITableView或UICollectionView,因为当单元格不再显示在屏幕上时,它们会在内部将单元格出列。 . 在您的情况下,UIScrollView不会将其子视图排挤出队列,因此屏幕始终包含图像,这会消耗更多内存,并且操作系统会因内存使用量过
在您的情况下,UIScrollView不会将其子视图排挤出队列,因此屏幕始终包含图像,这会消耗更多内存,并且操作系统会因内存使用量过大而关闭(崩溃)您的应用程序。您应该使用UITableView而不是UIScrollView。
但是,如果它们是非常大的图像,仅加载一个图像时就会崩溃,除非对其进行预处理(调整大小)。为什么需要将它们全部加载到内存中?你不能直接加载正在显示的内容吗?使用
UICollectionView
或UITableView
将有助于完成此任务。现在,当我在UICollectionView中滚动时有20到30个图像时,我使用UICollectionView。我收到了记忆警告。请尽快提出建议。您是否可以共享您希望使用CollectionView实现的所需输出?(提供所需布局的一些屏幕截图)“内存警告”的主要原因之一可能是图像的大小。如果图像的大小非常大,可能会占用大量内存。在集合视图中显示图像之前,可能需要压缩图像。