Actuellement, j'ai une vue de collection qui occupe la majeure partie de mon écran à la taille d'écran de 3,5 pouces.La vue de collection est à 51 pixels du haut et 20 pixels du bas de l'écran. J'utilise les cellules avec UIPageControl
pour créer une mise en page paginée, avec une cellule par page. Lors du passage à la taille de 4 pouces, en utilisant des contraintes, je peux obtenir que la vue de collection se développe dans le nouvel espace (en conservant les 51 pixels du haut et 20 du bas), mais la taille de la cellule reste la même, donc maintenant il y a un tas d'espace vide en haut et en bas de la cellule. J'ai essayé d'utiliser des contraintes, mais il semble que vous ne puissiez pas les définir pour les cellules. Comment puis-je agrandir la taille des cellules pour remplir l'espace vide sur l'iPhone 5?
Le code de vue de collection est juste
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
MyCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
return cell;
}
La mise en page est configurée dans IB Je veux que la mise en page fonctionne d'abord avant d'ajouter plus
Vous pouvez soit utiliser la méthode UICollectionViewFlowLayout
itemSize
pour définir la taille UICollectionViewCell
, soit utiliser la méthode delegate
, collectionView:layout:sizeForItemAtIndexPath:
si vous devez définir dynamiquement les tailles de UICollectionViewCells
.
CollectionView layout Delegate that will help you to resize your Cell as you need.
- (CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout
sizeForItemAtIndexPath:(NSIndexPath *)indexPath;