0

我已经通过故事板创建了集合视图单元格,对于 4 英寸和 5 英寸的屏幕,我已将 UIEdgeInsetsMake 设置为编程方式,如果设备不是 4 和 5,那么我的故事板 UIEdgeInsetsMake 必须为此设置。

怎么做?

这是我的代码

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView
                        layout:(UICollectionViewLayout*)collectionViewLayout
        insetForSectionAtIndex:(NSInteger)section {
    CGRect screenBound = [[UIScreen mainScreen] bounds];
    CGSize screenSize = screenBound.size;
    CGFloat screenWidth = screenSize.width;
    UIEdgeInsets insets= UIEdgeInsetsMake(?,?,?,?);//how to get the current edge insets.
    if(screenWidth==320)
    {
        UIEdgeInsets insets = UIEdgeInsetsMake(0,12,20,2);
        return insets;
    }
        return insets;
}
4

1 回答 1

1

您正在寻找contentInset房产。

此外,您正在代码中重新声明变量insets。为简单起见,考虑更改为以下内容:

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView
                    layout:(UICollectionViewLayout*)collectionViewLayout
    insetForSectionAtIndex:(NSInteger)section {

    if([UIScreen mainScreen].bounds.size.width == 320)
    {
        return UIEdgeInsetsMake(0,12,20,2);
    }

    return collectionView.contentInset;

}
于 2015-09-28T14:13:48.090 回答