NSMutableArray 为表格视图填充太晚
Posted
技术标签:
【中文标题】NSMutableArray 为表格视图填充太晚【英文标题】:NSMutableArray gets populated too late for table view 【发布时间】:2015-01-17 09:23:33 【问题描述】:我们将对象的 id 保存到不同的类中。当单击单元格时,我们有一个表格视图会导致另一个表格视图。第二个表视图的数据在 initWithCoder 方法中填充,但它不会显示在第二个表视图中。我们知道在视图出现之前数组没有被填充。在显示表格视图之前,有什么方法可以等待数组正确填充?
谢谢大家。
【问题讨论】:
在数组获取值后调用 [tableview reloadData] 方法。another table view
是另一个视图控制器的视图吗?为什么不在显示表格视图之前填充数组?此外,您可以在填充数据源后随时[tableView reloadData]
。
我是美国人。我一直到凌晨 4 点才试图解决这个问题。你在 2 分钟内为我解决了这个问题。谢谢好心的先生。
【参考方案1】:
首先,显示空白表格视图不是很好的用户体验;所以我会把这个分析留给你。一个不错的解决方案是获取一些值(如果不是全部)并将它们传递给下一个视图控制器。
尽管如此,在下一个表视图控制器的viewDidLoad
中,您可以将特定数组添加为观察者。看到这个:http://nshipster.com/key-value-observing/。
在observeValueForKeyPath:ofObject:change:context:
API 中,您可以使用以下方法重新加载表格视图:
`[self.tableView reloadData]`
【讨论】:
以上是关于NSMutableArray 为表格视图填充太晚的主要内容,如果未能解决你的问题,请参考以下文章
NSMutableArray removeObjectAtIndex 在第二次执行时崩溃
NSMutableArray 到 Swift iOS 的字符串转换数组 [重复]