41

Mam UICollectionView z niestandardowym UICollectionViewFlowLayout. Przewija się w poziomie i pokazuje tylko jeden przedmiot na raz (pełna wysokość). Mam pagingEnabled = YES, aby przylgnął do stron.UICollectionView nie odbija się, gdy źródło danych ma tylko 1 pozycję.

UICollectionView pokazuje zdjęcia w określonym dniu. Początkowo miałem przyciski do zmiany dnia +/- 1 dnia, ale pomyślałem, że byłoby fajnie, gdyby użytkownik mógł wyciągnąć widok kolekcji po pierwszym lub ostatnim obrazie (za wcześniej ustalonym progiem), aby zmienić dzień. Zaimplementowałem to za pomocą metod delegatów UIScrollView i działa świetnie ...... jeśli w widoku kolekcji są 2 lub więcej elementów.

Trudno to opisać, ale jeśli jest tylko 1 przedmiot, nie pozwala mi wyciągnąć przedmiotu poza jego granice. TO ZNACZY. nie ma odskoku.

Chciałbym mieć to zachowanie, ale najpierw muszę rozwiązać ten problem. Myślę, że jeśli usunęło pagingEnabled = YES i użyłem targetContentOffsetForProposedContentOffset: proposedContentOffset: withScrollingVelocity, być może uda mi się go uruchomić, ale naprawdę podoba mi się agresywne zachowanie, które włącza stronicowanie. (Są wzajemnie wykluczające się).

Wszelkie pomysły na ten temat?

Odpowiedz

98

UICollectionView ma właściwości alwaysBounceHorizontal i alwaysBounceVertical. Ustawienie wartości poziomej na YES did.

+13

Aby włączyć tę funkcję wewnątrz Konstruktora interfejsów - użyj opcji o nazwie "Odbij w pionie". –

+0

'alwaysBounceHorizontal' oraz' alwaysBounceVertical' pochodzą z widoku 'UIScrollView'. – tounaobun

+0

Więc czy mogę powiedzieć, że 'UITableView' ma tę właściwość ustawioną na' YES' jako domyślną, ponieważ może to być granica? –

2

Dzięki za @VaporwareWolf, odpowiedź jest poprawna. Chcę dodać, że dodatek:

nie zapomnij ustawienie właściwości bounces do YES w tym samym czasie (dzięki serii ujęć lub kodu).

Powiązane problemy