如何将图像存储到 UIImage 数组(Swift)

Posted

技术标签:

【中文标题】如何将图像存储到 UIImage 数组(Swift)【英文标题】:How do I store images into UIImage array (Swift) 【发布时间】:2015-07-07 13:03:32 【问题描述】:

这是我的代码

self.pages?.photo1.getDataInBackgroundWithBlock 
                (imageData: NSData?, error:NSError?) -> Void in
                if error == nil 
                    let image = UIImage(data: imageData!)
                    println(image!)
                    self.pageImages.append(image!)

当我运行 println(pageImages.count) 时,我得到一个 0,即使我知道我的数据集中还有其他元素(页面)

注意:“photo1”作为 PFFIle 类型存储在字典中

并且 println(image) 显示以下结果

UIImage: 0x7f90f3e12df0, 748, 420

【问题讨论】:

如何声明pageImages?你为什么只是设置/替换第一个元素? 这里是 decaration var pageImages: [UIImage] = [] 欢迎来到 ***。你不应该纠正你自己的问题。为了他人的利益,请将其恢复为您的原始问题并接受答案。 这仍然是我最初的问题,即使在实施更改后我也无法将任何数据放入 pageImages 数组 它在 Playground 中对我有用。错误必须在其他地方(也许您正在其他地方尝试arrayName[0] = value 模式?)。 【参考方案1】:

问题是您不能像以前那样将元素添加到数组中。

要在末尾添加元素,请使用

pageItems.append(image)

要在开头插入一个元素,请使用

pageItems.insert(image, atIndex: 0)

以下在 Playground 中按预期工作:

var imageArray: [UIImage] = []
let image = UIImage()
imageArray.append(image)
imageArray.insert(image, atIndex: 0)
let x = imageArray.count               // 2

【讨论】:

以上是关于如何将图像存储到 UIImage 数组(Swift)的主要内容,如果未能解决你的问题,请参考以下文章

Swift中的像素数组到UIImage

Swift:如何从 UIImage 数组中提取图像文件名

如何使用 swift 将 Images.xcassets 中的图像加载到 UIImage 中

如何使用 swift 将 Images.xcassets 中的图像加载到 UIImage 中

将一张图像分成多个部分后,如何在 Swift 中使用 UIImage 数组?

如何在 Swift 中识别 UIImage 数组中的 Tapped UIImage