ios - 图像选择器显示多个图像,如拼贴画,没有内存问题

标签 ios swift image memory-management uiimagepickercontroller

我正在使用这个ImagePicker从库或相机中选择多张图像。用户完成选择图像后,我会将这些图像存储到一个数组中。我想根据所选图像的数量将图像显示到框架中。例如,如果选择了 5 个以上的图像,则所选图像的结果将如下所示。 enter image description here

Imagepicker 对我来说是新的。我不知道如何实现这一目标。我读过很多帖子,但不清楚如何在我的案例中实现。

我正在 Demo 上测试它给出的项目,

func doneButtonDidPress(_ imagePicker: ImagePickerController, images: [UIImage]) {

    imagePicker.dismiss(animated: true, completion: nil)
    imageArray = images
    createCollage()
}

func createCollage() {

}

如果我使用 UIimageView 显示/加载图像,它会显示大量内存使用情况。

有人可以帮我解决这些问题吗?任何帮助将不胜感激!!

最佳答案

查看ImagePicker的文档和代码,推荐使用

public var imageAssets: [UIImage] {
    return AssetManager.resolveAssets(imagePicker.stack.assets)
}

通过寻找AssetManager.resolveAssets实现,我们将获得一些配置大小

open static func resolveAsset(_ asset: PHAsset, size: CGSize = CGSize(width: 720, height: 1280), completion: @escaping (_ image: UIImage?) -> Void) {

设置大小取决于您的imageView大小

---更新

或使用该属性

open var preferredImageSize: CGSize?

关于ios - 图像选择器显示多个图像,如拼贴画,没有内存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45842393/

相关文章:

ios - 将阴影应用于从 nib 加载的 subview

ios - 刷新键盘而不辞职并成为第一响应者

ios - 一次加载 10 个单元格行 - swift

image - 在 symfony 的 sonata admin 表单中添加预览图像

iphone - 将 NSMutableArray 保存到 plist 中

swift - UINavigationController 后退按钮标题颜色

ios - 将 iOS 应用程序调试到 iOS 设备时如何修复安全错误

javascript - Jquery - 单击时反转动画(切换或 if/else)

php - 如何通过 API 处理图像上的 vintage/retro 滤镜

objective-c - 将数据从一个类传输到另一类