UICollectionView et line separator ?
Salut tout le monde,
Je reviens par ici car j'ai un petit soucis..
J'ai une UiCollectionView (2 cellules par ligne).. il y a une icône et un texte sur chaque cellule, le tout sur un fond blanc.
J'aimerai délimité ces cellules par des lignes qui l'entour.. (en gros, les bords de la cellule en noir).. mais je n'arrive pas à trouver une option qui le fait simplement.. je me dis que c'est tellement courant qu'il doit y avoir une façon simple de le faire (plutôt que de créer les lignes manuellement et leur donner des contraintes pour coller au bord de la cellule)..
Quelqu'un à une idée pour faire ça simplement ? Une option que j'aurai loupé ? Une case à cocher qui fait tout directement ?
Merci de votre aide
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
CALayer donne la possibilité de rajouter un contour.
De mémoire, je ferais ainsi :
Dans awakeFromNib/initWithFrame: (l'une de ces dernières devraient être appelées normalement, en fonction de ton implémentation, cf. dequeueCell de UICollectionView pour être sûr).
J'ai mis ça dans cellForItemAtet ça fonctionne bien..
Bon par contre, c'est pas vraiment aligné et tout ça mais j'vais bien trouver comment faire ^^
Merci de ton aide ^^
Bon bah je galère sur l'alignement..
Voilà à quoi ressemble mon application et je n'arrive pas a centrer les cellules.. la marge au milieu est beaucoup trop grosse et je n'arrive pas a coller les cellules..
Une idée de comment je peux faire ?
Pas facile de te répondre sans savoir comment tu as réalisé tes contraintes. Tu peux nous donner une idée du résultat désiré ?
Je voulais juste que les cellules soient collées.. là il y a une grande marge au milieu et ça m'embête un peu..
Je posterai des screens de mes contraintes demain, ça sera surement plus clair (là j'ai plus trop le temps ^^)
De mémoire, c'est normal.
Le comportement d'un UICollectionViewFlowLayout avec deux éléments peut donner ça.
Un coup rapide serait de donner un offset à ta collection (qu'elle ne prenne pas toute la largeur).
Ou de changer l'espace entre les items, et potentiellement de calculer leur taille en fonction de la taille de la collectionview.
Merci Larme, du coup j'ai cherché dans ce sens là et ça a fonctionné
J'ai commencé par déclarer 2 variables :
Puis dans viewDidLoad, j'ai calculé la taille de l'écran et j'ai diviser par le nombre d'items que je voulais par ligne..
Et hop, ça fonctionne, j'ai bien 2 items par ligne et plus de marge bizarre au milieu
Merci ^^
De mémoire ta solution est bonne, car c'est comme cela que j'avais fait par contre fais attention à la rotation du device...
J'ai pas de rotation sur l'appli et ça m'arrange bien pour le coup