2015-04-02 7 views
2

У меня есть массив изображений в массиве NSData. Как преобразовать все из них в массив изображений, не делая это вручную? я могу использовать эту строку кода (let yourImage = UIImage(data:NsdataArray) )Как преобразовать объект NSData в UIImage? Использование Swift

var NsdataArray:[AnyObject] = [image1, image2, image3] 
//convert everything to this array 
var imageArray:[UIImage] = [UIImage]() 
+0

Просто используйте простой цикл. – zaph

+0

Как сделать цикл for для этого? –

ответ

3

Попробуйте var imageArray = NsdataArray.map({UIImage(data: $0)}).

4
var imageArray = NsdataArray.map({UIImage(data: $0)}) 

ИЛИ

var imageArray = [UIImage]() 

    for data in NsdataArray { 
     if let img = UIImage(data: data){ 
      imageArray.append(img) 
     } 
    } 
+2

Что произойдет, если возникла ошибка при создании 'UIImage' из данных? – zaph

+0

Я обновил свой ответ –

2

для решения петли:

var NsdataArray:[AnyObject] = [image1, image2, image3] 
//convert everything to this array 
var imageArray:[UIImage] = [UIImage]() 

for aData in NsdataArray { 
    var image = UIImage(data: aData as? NSData) 
    if let _image = image { 
     imageArray.append(_image) 
    } else { 
     //error when convert to UIImage 
    } 
} 
Смежные вопросы