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]()
Ответы
Ответ 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;