我有一个带有各种帖子的UITableView,用户可以评论。一旦用户点击单元格中的注释按钮,就会加载注释视图控制器,并且会调用viewwillappear,但在呈现视图之前,应用程序会冻结。我正在进行API调用以获取viewDidLoad中的注释,并在API调用完成后重新加载表。我无法确定iOS 11在哪些方面做得与众不同。任何帮助将不胜感激。
答案 0 :(得分:0)
在后台线程中调用API
let dispatchTime: DispatchTime = DispatchTime.now() + Double(Int64(0.1 * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC)
DispatchQueue.main.asyncAfter(deadline: dispatchTime, execute: {
DispatchQueue.main.async{
//Call API function here
}
})
答案 1 :(得分:0)
问题似乎与导航控制器有关,就像iOS 11过渡时的大多数问题一样。
我在viewDidLoad中为viewcontroller设置了正确的条形按钮。评论了一行代码并将其移至viewDidAppear并且应用程序并未冻结。
但是 当用户点击后退按钮时,这会导致另一次冻结。所以我在XCode 9中重新创建了segues, 没有 在导航项上设置了正确的条形按钮。这似乎解决了这个问题,现在还没有任何冻结。希望这有助于其他人。