什么时候轮换适当的时刻来更改UICollectionView的布局参数
希望有一个相对较新的UIKit
控件的简单问题
我有一个UICollectionView
有一个viewLayout
与一个单元格的行,这是在纵向模式下的UICollectionView
边界的确切高度
因此,当iPad翻转到横向模式时,该行比屏幕本身更高,此时布局(几乎)静静地失败,并且抱怨该行高于边界。
什么是处理viewLayout的特性的理想方法,特别是涉及到在ViewController
响应旋转?
我正在处理类似的问题。
目前,我的UICollectionViewController有两个UICollectionViewFlowLayout的实例variables,每个都有相应的用于portait或landscape的insets。
轮stream,我这样做:
-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{ if (UIDeviceOrientationIsPortrait(toInterfaceOrientation)) { [_itemCollection setCollectionViewLayout:_portraitLayout]; [_itemCollection reloadData]; } else { [_itemCollection setCollectionViewLayout:_landscapeLayout]; [_itemCollection reloadData]; } }
我遇到的唯一问题是它随机随机崩溃setCollectionViewLayout上的exc_bad_access。
类似上面的东西可能适合你。 我不确定这是否是正确的做法。 我只有最近才开始使用UICollectionViews。