Я имею ошибку:«Это приложение модификация autolayout двигателя от фонового потока»
Это приложение модификации autolayout двигателя от фонового потока, что может привести к повреждению двигателя и странным авариям
всякий раз, когда я пытаюсь загрузить изображение в виде таблицы. Соответствующий код выглядит следующим образом:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cellIdentifier = "ArticleCell"
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: indexPath) as! ArticleCell
let a: Article = self.articlesArray[indexPath.row] as! Article
//let a: Article = self.newArticlesArray[indexPath.row] as! Article
cell.titleLabel.text = a.title
cell.descLabel.text = a.desc
let data = NSData(contentsOfURL: a.thumbnail)
cell.iView.image = UIImage(data: data!)
return cell
}
func downloadArticles(){
//JSON parsing methods here
self.syncCompleted = true
dispatch_async(dispatch_get_main_queue()) {
self.tableView.reloadData()
}
}
task.resume()
}
Каждый раз, когда я нажимаю изображение в моей таблице просмотра движения изображения слева от ячейки, и если изображение, которое я загружен не размер UIImageView затем изменяет размер все это.
Как исправить эту ошибку?
Я пробовал код dispatch_get_main_queue, но, похоже, для меня это не делает.
Можете ли вы установить контрольную точку внутри своего «tableView: cellForRowAtIndexPath:», а затем проверить трассировку стека, откуда она была вызвана? Если он находится в фоновом потоке, вы обычно должны видеть, откуда возникла перезагрузка таблицы. Таким образом, вы можете обнаружить, где вам нужно отправить в основную очередь ... –
@ Tirat2131 Когда я попытался воспроизвести подобную проблему, я получил ** Stack trace ** вместе с указанным вами сообщением. Вы получаете трассировку стека в журнале? Можете ли вы предоставить это, если у вас есть? –
Как мне все это сделать? –