2013-09-15 3 views
2

В настоящее время у меня есть 9 элементов, отображаемых в моей коллекции. Я хочу сетку 3 * 3 для каждого раздела, который у меня есть. Поэтому, когда я хочу перейти к следующему разделу, я прокручу вправо, и я вижу сетку 3 * 3 для моего следующего раздела. То, что я сделал для этого, это установить высоту UICollection в 3 * height_of_my_cell. Я также уверен, что:Пробел между строками UICollectionViewCell

- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section 
{ 
    return 0.0f; 
} 

- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section 
{ 
    return 0.0f; 
} 

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section { 
    return UIEdgeInsetsMake(0, 0, 0, 0); 
} 

Таким образом, цель действительно иметь клетки, вставленные друг к другу (без пробела между ними). Проблема в том, что я получаю следующее: enter image description here

Чтобы увидеть 7,8 и 9 мне нужно прокрутить вправо. Поэтому я вижу, что я могу избавиться от пространства между «столбцами», а не строками. Так что мне нужно o создать пользовательский UICollectionViewFlowLayout, чтобы достичь этого? Также это делается на iOS7, и я не уверен, повлияет ли это на окончательный результат.

ответ

1

был в состоянии решить эту проблему, создав пользовательский UICollectionViewFlowLayout и добавив следующую строку:

[self setSectionInset:UIEdgeInsetsMake(-65.0f, 1.0f, 0.0f, 0.0f)]; 

enter image description here

7

Просто установите свойство UICollectionViewFlowLayout, такие как:

UICollectionViewFlowLayout * layout = [[UICollectionViewFlowLayout alloc] init]; layout.minimumLineSpacing = 0;

Смежные вопросы