我管理UITableView通过NSFetchedResultsController,但所有的UI阻塞(我可以做什么,如点击,滚动…),而NSFetchedResultsController加载数据。有什么解决办法吗?谢谢! !
要使应用程序对用户友好,有一点很重要:
如果在Main上有任何密集的、与
UI
无关的计算线程,你做错了!
使主线程 UI
只会确保UI
永远不会冻结,或者正如你所描述的那样,得到"阻塞"。因此,您的NSFetchedResultsController
应该在另一个线程上,以确保不会发生这种情况。
NSOperation
绝对是解决你所描述的问题的方法。下面是一个教程和示例代码,将解释一个类似的场景,以及如何修复它。
希望有帮助!