Я знаю, что есть много ответов об этой ошибке, но я не могу понять, как это понять. Я получаю сообщение об ошибке Thread 1: EXC_BAD_ACCESS (code = 257, address = 0x200000003) в строке, где вызывается функция. Мой контроллер ячеек таблицы выглядит следующим образом.EXC_BAD_ACCESS в быстрой работе при вызове функции
import UIKit
class NewsTableViewCell: UITableViewCell {
@IBOutlet weak var postImageView: CustomImageView!
@IBOutlet weak var postTitleLabel:UILabel!
@IBOutlet weak var authorLabel:UILabel!
@IBOutlet weak var dateLabel: UILabel!
var article: Article? {
didSet {
postTitleLabel.text = article?.title
authorLabel.text = article?.author
dateLabel.text = article?.date
setupArticleImage()
}
}
func setupArticleImage() {
postImageView.loadImageUsingUrlString("http://theblakebeat.com/uploads/873463.jpg")
}
Этот код вызывает функцию loadImageUsingUrlString, которая находится в моем файле extensions.swift. Он вызывается для каждой ячейки представления таблицы, которая загружается для загрузки изображения. Код для extensions.swift выглядит следующим образом.
import UIKit
let imageCache = NSCache()
class CustomImageView: UIImageView {
var imageUrlString: String?
func loadImageUsingUrlString(urlString: String) {
imageUrlString = urlString
let url = NSURL(string: urlString)
image = nil
if let imageFromCache = imageCache.objectForKey(urlString) as? UIImage {
self.image = imageFromCache
return
}
NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { (data, respones, error) in
if error != nil {
print(error)
return
}
dispatch_async(dispatch_get_main_queue(), {
let imageToCache = UIImage(data: data!)
if self.imageUrlString == urlString {
self.image = imageToCache
}
imageCache.setObject(imageToCache!, forKey: urlString)
})
}).resume()
}
}
Заранее благодарю за помощь.
Можете ли вы опубликовать полный отчет об ошибке? –
Да, не могли бы вы дать мне информацию о том, как это сделать? Im unsure, где можно получить доступ к полному журналу ошибок. Благодаря! –
Из самого отладчика. или вы получаете 'Thread 1: EXC_BAD_ACCESS (code = 257, address = 0x200000003)' только этот контент? –