在 UITableView 上调用 [reloadData] 的最佳时间是什么时候? viewDidAppear 还是 viewWillAppear?如果一个 View 被卸载,底层的tableview也会被卸载吗?
我问的原因是由于我看到的一些行为。假设一个 View 被要求重新加载其数据源,但在完成之前被释放。一个场景是使用 UITabBarController 并导航到与选择的 ViewController 不同的 View 。所以发生的事情是 viewWillAppear 被调用,但 viewDidAppear 没有(因为我导航离开了)。
结果,ViewController 被释放(连同它的模型数据),但是如果我在 viewWillAppear 中调用 reloadData,则会调用“cellForRow”和“numberOfRows”方法,这会导致“deallocated instance”错误。那有意义吗?如果模型可以在任何时候请求显示 View 时更改,您通常会输入检查 nil 的代码吗?
最佳答案
加载 View 后,我将加载表,它允许在弄乱它们之前创建所有 UIObject。不确定,但我相信该表会自动与 super View 一起卸载。
看看这个问题>>>
Objective C - Correct way to empty and reload UITableViewController with NSMutableArray
关于ios - UITableView reloadData 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9708893/