设备方向更改时如何更改 UiCollectionView 单元格大小?
How to change UiCollectionView cell size when device orientation changes?
我正在使用 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
那么,如何更新单元格大小并根据设备方向的变化进行调整?请帮忙!
正如@krishnanunni 已经提到的,
请检查shareLogCollectionView是否连接了正确的outlet。
这是一个很常见的错误。
也可以使用 viewWillTransitionToSize
进行旋转
请检查。
我正在使用 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那么,如何更新单元格大小并根据设备方向的变化进行调整?请帮忙!
正如@krishnanunni 已经提到的,
请检查shareLogCollectionView是否连接了正确的outlet。 这是一个很常见的错误。
也可以使用 viewWillTransitionToSize
请检查。