如何在设备方向更改时更改UiCollectionView单元格大小?

时间:2016-04-12 05:37:24

标签: swift uicollectionview uicollectionviewcell screen-orientation

我正在使用UICollectionView并使用以下方法设置单元格的大小:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
        return CGSizeMake(collectionView.bounds.size.width, 313)
    }

加载视图时单元格大小正常。但是,当方向更改时,单元格大小不会根据视图宽度和高度进行更新。

我尝试检测设备方向并正确完成。当设备方向改变时,将调用以下方法:

func rotated()
{
    self.shareLogCollectionView.reloadData()
}

但是,我收到以下错误: 致命错误:在解开可选值时意外发现nil

那么,如何更新单元格大小并根据设备方向的变化进行调整?请帮助!

1 个答案:

答案 0 :(得分:1)

正如@krishnanunni已经提到的那样,

请检查shareLogCollectionView是否连接了正确的插座。 这是一个非常常见的错误。

对于旋转,您可以使用viewWillTransitionToSize

请检查。