使用UICollectionView的NSInternalInconsistencyException

时间:2016-08-23 03:32:33

标签: ios swift uicollectionview

最近,我被分配处理崩溃报告,我发现有很多崩溃报告来自NSInternalInconsistencyException'源自' UICollectionView'。共同的两个原因是

  • 'Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'UICollectionView dataSource is not set'
  • Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'request for number of items in section 0 when there are only 0 sections in the collection view'

我无法重现崩溃。对不起,我无法发布代码或完整的崩溃报告,但我会尽力简要说明情况。

我的UIViewController持有UICollectionViewUIViewController充当dataSource的{​​{1}}和delegate。并且在故事板中分配了UICollectionViewdataSource

首先,我认为delegate某处消失了,这会导致崩溃。所以我试图通过设置dataSource来强制崩溃,但正如预期的那样它没有崩溃。我还在这里找到了一个解决方案,用于检查dataSource = nil中的dataSource是否等于nil或相应地处理它。我试图在那里强制layoutAttributesForElementsInRect,但仍无法重现问题( UICollectionView and Supplementary View crash

dataSource = nilUIViewController作为dataSource的某种方式是否有可能以某种方式死亡,因此UICollectionView没有dataSource?但是这不会与UICollectionView相同,这不会导致应用程序崩溃吗?

如果我将UICollectionView.dataSource = nilUIViewController分开,然后在UICollectionViewDataSource分配dataSource,会有帮助吗?

如果有人能指出我解决这个问题的正确方向,我将不胜感激。

由于

编辑:在这里发现了类似的问题iOS 9: UICollectionView dataSource is not set但是,还没有解决方案。

0 个答案:

没有答案