2

我正在努力解决以下问题。我有一个 UICollectionView,它的布局的页眉和页脚参考大小设置为一个值(比如 40.0)。当我删除/插入单元格并且集合视图位于页眉和页脚不在屏幕上的位置时,一切都很好。但是,当他们在屏幕上执行相同的操作时,我的代码会崩溃并出现以下错误:

2012-12-17 16:05:05.042 BambooV2Demo[37770:907] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** setObjectForKey: object cannot be nil (key: <_UICollectionViewItemKey: 0x1e04cf70> Type = SV Kind = UICollectionElementKindSectionHeader IndexPath = <NSIndexPath 0x1e04fe90> 2 indexes [0, 0])'

另一方面,如果我将页眉和页脚大小设置为 0.0,一切都会再次完美。当页眉/页脚大小不为零并且它们在屏幕上可见时,是否有人知道崩溃的原因?

4

2 回答 2

3

当我设置标题大小但没有为标题指定视图时,我遇到了这个问题。相反,我使用了部分插图并将标题大小设置回零。

于 2013-05-17T21:04:13.023 回答
0

您应该在布局子类中或通过委托在下面的方法中返回 YES,这将导致 CollectionView 项目重新排列到您的布局中。

- (BOOL) shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds
{
    return YES;
}
于 2013-02-26T08:31:42.750 回答