2015-02-06 3 views
2

У меня есть просмотр коллекции, который является полной шириной экрана, но я хочу, чтобы коллекция и ячейка коллекции отображали размер в соответствии с экраном iPhone.xcode UICollectionView Cell autolayout

Одна ячейка занимает коллекцию и прокручивает ее.

Поэтому я хочу, чтобы ячейка и коллекция были 320 x 125 для iPhone 4, 4s, 5 и 5s; 375 x 146 для iPhone 6 и 414 x 162 для iPhone 6 Plus.

Невозможно использовать автозапуск в ячейке, но я был в состоянии для просмотра коллекции.

Любая помощь приветствуется.

Благодаря

ответ

0

При определении кадра UICollectionView или UICollectionViewCell, определяют width значение кадра как self.view.frame.size.width.

Он автоматически выберет полную ширину, которую вы хотите.

2

Вы могли бы реализовать метод делегата для размера ячейки

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath; 

Вы можете вернуться туда размер вы хотите.

То, что я действительно не понял из вашего вопроса, состоял в том, что вид коллекции уже имеет нужный размер. Если да, то в методе делегата вы можете сделать что-то вроде:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    return CGSizeMake(CGRectGetWidth(self.collectionView.frame), CGRectGetHeight(self.collectionView.frame)); 
} 

При этом ячейки должны иметь нужный размер.

Надеюсь, это поможет!

+0

Это путь, но ооочень раздражает, что не существует способа сделать это с помощью ограничений, тем более, что вы хотите, чтобы иметь представление о том, что вы делаете! –

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