在数组中附加图像 [英] Appending Images in Array
本文介绍了在数组中附加图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
从XML
enclosure
下载后,我试图将图像附加到数组中. XML
中有20张图像.我想按顺序将这些图像一一存储在数组中,然后尝试保存在NSUserDefaults
中.
谁能告诉我我该怎么做?
谢谢
I am trying to append images in array after downloading from XML
enclosure
. 20 images are in XML
. I want to store these images one by one in array in order form, and then trying to save in NSUserDefaults
.
Can any one please tell me how i can do this?
Thanks
var imageArray : [NSData] = []
var imgIndex = 0
downloadFileFromURL(NSURL(string: self.posts.objectAtIndex(indexPath.row).valueForKey("enclosure") as! String)!, completionHandler:{(img) in
dispatch_async(dispatch_get_main_queue(), { () -> Void in
cell.sideImageView.image = img
if indexPath.row == self.imgIndex{
imageArray.insert(UIImageJPEGRepresentation(img, 0.75)!, atIndex: self.imgIndex)
self.imgIndex++
print("Image append with data")
self.newsDefaults.setObject(imageArray, forKey: "image")
}
})
})
func downloadFileFromURL(url1: NSURL?,completionHandler: CompletionHandler) {
// download code.
if let url = url1{
let priority = DISPATCH_QUEUE_PRIORITY_HIGH
dispatch_async(dispatch_get_global_queue(priority, 0)) {
let data = NSData(contentsOfURL: url)
if data != nil {
print("image downloaded")
completionHandler(image: UIImage(data: data!)!)
}
}
}
}
'一些输出后,我收到此错误.图片下载 图片下载 图像附加数据 致命错误:数组索引超出范围'
'I am getting this error after some output. image downloaded image downloaded Image append with data fatal error: Array index out of range'
推荐答案
获取所有图像并分配给
var DtaAryVar: [NSData]()
然后将NSData数组转换为数据并存储
Then convert array of NSData to Data and store
let DtaZipVar = NSKeyedArchiver.archivedDataWithRootObject(DtaAryVar)
let DftSdbVal = NSUserDefaults.standardUserDefaults()
DftSdbVal.setObject(DtaZipVar, forKey: "ImageKey")
您可以通过以下方式获取您的数据
You can get back ur data by
var DtaZipVar = DftSdbVal.valueForKey("ImageKey")
let DtaAryVar = NSKeyedUnarchiver.unarchiveObjectWithData(DtaZipVar) as! [NSData]
let ImjAryVar = [UIImage]()
for DtaIdxVar in DtaAryVar
{
ImjAryVar.append(UIImage(data : DtaIdxVar))
}
这篇关于在数组中附加图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文