Ios UICollectionViewCell间距
我有一个UICollectionView,它在宽度上适合3个单元格(并垂直滚动)。当我更改设备的旋转时,集合视图会稍微拉伸,单元格间距也会稍微增大。但是,左单元格捕捉到左边框,右单元格捕捉到右边框,中心单元格保持居中 我更喜欢两边都有一个边距,与单元格之间的距离相等,这样看起来间隔就小一些 我尝试调用Ios UICollectionViewCell间距,ios,uicollectionview,uicollectionviewcell,uicollectionviewlayout,Ios,Uicollectionview,Uicollectionviewcell,Uicollectionviewlayout,我有一个UICollectionView,它在宽度上适合3个单元格(并垂直滚动)。当我更改设备的旋转时,集合视图会稍微拉伸,单元格间距也会稍微增大。但是,左单元格捕捉到左边框,右单元格捕捉到右边框,中心单元格保持居中 我更喜欢两边都有一个边距,与单元格之间的距离相等,这样看起来间隔就小一些 我尝试调用[collectionView setContentInset:UIEdgeInsetsMake(0,10,0,10)],但这只是在视图中添加了一个水平滚动,而不是近似单元格 如何在不改变滚动视图大
[collectionView setContentInset:UIEdgeInsetsMake(0,10,0,10)]代码>,但这只是在视图中添加了一个水平滚动,而不是近似单元格
如何在不改变滚动视图大小的情况下添加边距?我找到了答案。我必须添加此委托方法:
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
return UIInterfaceOrientationIsPortrait([self interfaceOrientation]) ? UIEdgeInsetsMake(0, 22, 0, 21) : UIEdgeInsetsMake(0, 0, 0, 0);
}
并在-willRotateToInterfaceOrientation:duration:
上刷新集合视图:
[[_collection collectionViewLayout] invalidateLayout];
[_collection reloadData];