Ios Swift nsmutableAttributeString原因+;在事务内调用[CatTransaction synchronize]

Ios Swift nsmutableAttributeString原因+;在事务内调用[CatTransaction synchronize],ios,swift,swift3,Ios,Swift,Swift3,所有这些代码都在此TableView函数中运行 let attributedString = try! NSMutableAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil) 我遇到了一个类似的问题,在viewDidLoad()中调用NSAttributedString,甚至viewwillappease()导致发生+[CATransaction synchronize]

所有这些代码都在此TableView函数中运行

let attributedString = try! NSMutableAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil)

我遇到了一个类似的问题,在
viewDidLoad()
中调用
NSAttributedString
,甚至
viewwillappease()
导致发生
+[CATransaction synchronize]
。我将对
NSAttributedString
的适当调用放入主队列,在不同的时间点执行,从而解决了这个问题

比如:

注意:
attributedStringFromHtmlString
是一个调用
NSAttributedString


另请参阅以了解类似问题。

对于我们,这导致执行
collectionView(didSelectItemAt:)
,并按照建议将其包装并修复。
let attributedString = try! NSMutableAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil)
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
DispatchQueue.main.async {
    self.textField.attributedText = attributedStringFromHtmlString(infoMessage)
}