我有一个照片拼贴应用程序,它从用户的 facebook/instagram/library 中获取一堆照片,并将它们绘制到 UIView 上。为了控制数量,有一个计算密度的滑块工具(例如,每 150px 宽,添加一个图像)。在添加了很多 UIImageViews 之后,我遇到了内存问题。
有没有更好、更有效的方式在屏幕上显示图像?
我有一个照片拼贴应用程序,它从用户的 facebook/instagram/library 中获取一堆照片,并将它们绘制到 UIView 上。为了控制数量,有一个计算密度的滑块工具(例如,每 150px 宽,添加一个图像)。在添加了很多 UIImageViews 之后,我遇到了内存问题。
有没有更好、更有效的方式在屏幕上显示图像?
为什么不使用UICollectionView
. 它旨在以类似于UITableVIew
. 就像一个 TableView 内存是由控制器自动管理的。
有关更多信息,请参阅文档。
您没有在问题中明确说明您是如何使用这组图像的。另一种方法是使用 Core Graphics 将图像绘制到图形上下文中。这会将图像绘制到单个视图中,而不是多个视图中。只有一个位图可以保存在内存中。有关示例,请参阅将 PNG 图像绘制到图形上下文中以进行混合模式操作。