2015-09-28 9 views
1

Я создал коллекцию view cell через storyBoard, для 4 и 5-дюймового экрана я установил UIEdgeInsetsMake как программно, если устройство не 4 и 5, тогда моя раскадровка UIEdgeInsetsMake должна установить для этого.Как получить curent 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; 
} 

ответ

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; 

} 
+0

вы абсолютно правильно –

+0

@ Stone2 как получить ширину и высоту братан с помощью программно ... \ –

+0

@KishoreKumar Ширина и высота чего? – Stonz2