对于任何可能有想法的人来说,这是一个简单的问题:
我最近遇到了一个关于我的应用程序的错误,这引发了一个小问题。
该错误是由一段代码试图访问尚未设置的数组引起的。 这里有趣的商店是相同的代码在iPad Air上运行得非常好,并且在iPad Pro上崩溃。
实际上,我试图在我的控制器的collectionView:cellForItemAtIndexPath:
方法中访问该数组,并且该数组是在同一控制器的viewWillAppear:
方法中初始化的。
在我试过的任何设备上,在iPad Pro上出现,collectionView:cellForItemAtIndexPath:
方法始终在viewWillAppear:
之后调用,但在iPad Pro上则是另一种方式。
我轻松解决了这个问题,但我仍然想知道为什么iPad Pro的周期与另一个不同。任何人都有这方面的线索?
(我在Objective-C,iOS 11.0上)
答案 0 :(得分:0)
为以下条件
更改collectionView:cellForItemAtIndexPath方法 if (array has data || data is downloading) {
show activity indicator
} else {
show data
}
加载数据时重新加载集合视图