Я пытаюсь добавить изображение в ячейку tableview, но не успеваю его отобразить.Swift - Добавление изображения в ячейку таблицы из библиотеки объектов
Изображение загружается из файловой системы (I println()
) в качестве UIImage, но я не могу представить его в ячейку. Помещение println()
после закрытия показывает, что все изображения загружаются после возвращения ячейки.
Вот мой код:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell") as! UITableViewCell
let note = notes[indexPath.row]
let nsURL = NSURL(string: note.valueForKey("url") as! String)!
var loadError: NSError?
var image: UIImage?
assetsLibrary!.assetForURL(nsURL, resultBlock: { (asset) -> Void in
if let ast = asset {
let iref = ast.defaultRepresentation().fullResolutionImage().takeUnretainedValue()
image = UIImage(CGImage: iref)
println("The loaded image: \(image)")
}
}, failureBlock: {(error) -> Void in
loadError = error
})
cell.textLabel!.text = note.valueForKey("title") as? String
cell.imageView!.image = image
return cell
}
Когда я заменяю замыкание следующим загрузить изображение из самого проекта он показывает в таблице. Это заставляет меня поверить в это не из-за проблемы с тем, как создается панель рассказов.
UIImage(named: transportItems[indexPath.row])
Любая помощь будет очень признательна.
Вы пытались выяснить, вызвана ли линия 'cell.imageView! .image = image' после того, как 'image = UIImage (CGImage: iref)'? Попробуйте переместить cell.textLabel.image = изображение в блок ... Если это сработает, я могу написать ответ –