在IOS中,是否存在重新加載當前未顯示的UITableView的潛在隱患。我發現我有一些非常奇怪的錯誤,其中單元格內容正在消失,但它似乎只在切換到另一個Tab時纔會發生。(具有第一個選項卡上的tableView的UIViewController仍在內存中並響應外部API更新)在UITableView上重新加載未顯示的數據
所以行:
dispatch_async(dispatch_get_main_queue(), {
self.tableView.reloadRowsAtIndexPaths([NSIndexPath(forRow: row, inSection: 0)], withRowAnimation: UITableViewRowAnimation.None)
}
正在執行代碼來修改未實際顯示一個表的顯示,這是當所述錯誤已發生。
如果我向viewControllers ViewDidAppear和ViewDidDisappear添加了一些代碼以基本阻止對tableView的更新(然後在重新進入該viewController時執行完全刷新),它似乎解決了這個問題。
dispatch_async(dispatch_get_main_queue(), {
if self.delegate.viewIsDisplayed() {
self.tableView.reloadRowsAtIndexPaths([NSIndexPath(forRow: row, inSection: 0)], withRowAnimation: UITableViewRowAnimation.None)
}
}
我不知道爲什麼這個問題發生了什麼,並希望有人也許能夠照到了我的觀察之前的一些光(小區中隨機清除的內容,然後重新出現在以後每次重裝)