Подтвердить что ты не робот

UICollection View Отрегулируйте размер ячейки для размера экрана

В настоящее время у меня есть представление коллекции, которое занимает большую часть моего экрана при размере экрана 3,5 дюйма. Вид коллекции - 51 пиксель от верхней и 20 пикселей от нижней части экрана. Я использую ячейки с UIPageControl для создания выгружаемого макета с одной ячейкой на страницу. При переключении на 4-дюймовый размер, используя ограничения, я могу получить представление коллекции для расширения в новое пространство (поддерживая 51 пиксель сверху и 20 снизу), но размер ячейки остается прежним, так что теперь есть куча пустого пространства в верхней и нижней частях ячейки. Я пытался использовать ограничения, но, похоже, вы не можете установить их для ячеек. Как увеличить размер ячейки, чтобы заполнить пустое пространство на iPhone 5?

Код представления коллекции просто

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
              cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
MyCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
return cell;

}

Макет устанавливается в IB. Я хочу, чтобы макет работал сначала, прежде чем добавить еще

iPhone 5 view. I want to fill the empty space

iPhone 4 view

4b9b3361

Ответ 1

Вы можете использовать свойство UICollectionViewFlowLayout method itemSize для установки размера UICollectionViewCell или использовать метод delegate, collectionView:layout:sizeForItemAtIndexPath:, если вам необходимо динамически установить размеры UICollectionViewCells.

Ответ 2

CollectionView layout Delegate that will help you to resize your Cell as you need.
- (CGSize)collectionView:(UICollectionView *)collectionView 
                          layout:(UICollectionViewLayout*)collectionViewLayout 
          sizeForItemAtIndexPath:(NSIndexPath *)indexPath;