J'ai un UICollectionView avec un UICollectionViewFlowLayout personnalisé. Il défile horizontalement et n'affiche qu'un seul élément à la fois (pleine hauteur). J'ai pagingEnabled = YES pour qu'il colle aux pages.
L'UICollectionView montre des photos dans une journée particulière. Au départ, j'avais des boutons pour changer le jour +/- 1 jour, mais je pensais que ce serait bien si l'utilisateur pouvait tirer sur la vue de la collection après la première ou la dernière image (au-delà d'un seuil prédéterminé) pour changer le jour. J'ai implémenté cela en utilisant les méthodes déléguées UIScrollView et cela fonctionne très bien ...... s'il y a 2 éléments ou plus dans la vue de la collection.
C'est difficile à décrire, mais s'il n'y a qu'un seul élément, cela ne me permet pas de tirer l'élément au-delà de ses limites. C'EST À DIRE. il n'y a aucun rebond.
Je voudrais avoir ce comportement, mais je dois d'abord résoudre ce problème. Je pense que si j'ai supprimé pagingEnabled = YES et utilisé targetContentOffsetForProposedContentOffset: proposeContentOffset: withScrollingVelocity, que je pourrais peut-être le faire fonctionner mais j'apprécie vraiment le comportement accrocheur que la pagination permet. (Ils s'excluent mutuellement).
Des idées à ce sujet?
UICollectionView
a les propriétés alwaysBounceHorizontal
et alwaysBounceVertical
. Définir l'horizontale sur OUI did
l'astuce.
Merci pour @VaporwareWolf, la réponse est correcte. Je veux ajouter un supplément qui:
N'OUBLIEZ PAS de définir la propriété
bounces
surYES
en même temps (via le storyboard ou votre code).