UICollectionView 在 vi​​ewDidLoad 中的大小不正确

UICollectionView not the right size in viewDidLoad

我的情节提要中定义了一个简单的 UICollectionView(见屏幕截图)。

我正在使用自动布局,UICollectionView 附加到前导、尾随和顶部的超级视图以及底部的工具栏。

当我在控制台中显示 viewDidLoad 中 UICollectionView 的大小时:

NSLog(@"%s CollectionView ========== > height:%f width:%f", __PRETTY_FUNCTION__,self.theCollectionView.bounds.size.height, self.theCollectionView.bounds.size.width);

我得到: CollectionView ========== > 框架 height:492.000000 width:600.000000

这个尺寸也是故事板中显示的尺寸(宽度:600 Height:492)。

当我在 viewDidAppear 中 运行 相同的登录时,我得到: CollectionView ========== > 框架 height:663.000000 width:1024.000000

这是我所期望的。我很惊讶只有在 viewDidAppear 中有合适的尺寸,请你解释一下或者我的故事板有什么问题吗?

谢谢,

塞巴斯蒂安。

对于任何依赖于帧大小的东西,我通常使用

override func viewDidLayoutSubviews()

这也会考虑自动旋转。