设备方向更改时如何更改 UiCollectionView 单元格大小?
Posted
技术标签:
【中文标题】设备方向更改时如何更改 UiCollectionView 单元格大小?【英文标题】:How to change UiCollectionView cell size when device orientation changes? 【发布时间】:2016-04-12 05:37:24 【问题描述】:我正在使用 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
那么,如何更新单元格大小并根据设备方向的变化进行调整?请帮忙!
【问题讨论】:
'unexpectedly found nil while unwrapping an Optional value' 当展开对象为 nil 时显示。请检查 shareLogCollectionView 是否连接了正确的插座。 非常感谢,您说得对!我以某种方式不正确地引用了插座。 【参考方案1】:正如@krishnanunni 已经提到的,
请检查 shareLogCollectionView 是否连接了正确的插座。 这是一个很常见的错误。
也可以使用viewWillTransitionToSize
进行旋转
请检查。
【讨论】:
以上是关于设备方向更改时如何更改 UiCollectionView 单元格大小?的主要内容,如果未能解决你的问题,请参考以下文章