Подтвердить что ты не робот

UICollectionView не отскакивает, когда у источника данных есть только 1 элемент

У меня есть UICollectionView с пользовательским UICollectionViewFlowLayout. Он прокручивается горизонтально и показывает только один пункт за раз (полная высота). У меня есть pagingEnabled = YES, чтобы он привязывался к страницам.

UICollectionView отображает фотографии в определенный день. Вначале у меня были кнопки для изменения дня +/- 1 день, но я подумал, что это будет аккуратно, если пользователь сможет потянуть изображение коллекции мимо первого или последнего изображения (минус заданный порог), чтобы изменить день. Я реализовал это с помощью методов делегатов UIScrollView, и он отлично работает... если в представлении коллекции есть два или более элемента.

Трудно описать, но если есть только 1 элемент, это не позволяет мне вытащить элемент за пределы. И.Е. там нет отскока.

Я хотел бы иметь такое поведение, но сначала мне нужно решить эту проблему. Я думаю, что если я удалил pagingEnabled = YES и использовал targetContentOffsetForProposedContentOffset: предложилContentOffset: withScrollingVelocity, что я могу заставить его работать, но мне действительно нравится мгновенное поведение, которое позволяет подкачки. (Они взаимоисключающие).

Любые идеи по этому поводу?

4b9b3361

Ответ 1

UICollectionView имеет свойства alwaysBounceHorizontal и alwaysBounceVertical. Установка горизонтальной настройки на YES did трюк.

Ответ 2

Спасибо за @VaporwareWolf, ответ правильный. Я хочу добавить дополнение, которое:

НЕ забывайте устанавливать свойство bounces в YES одновременно (через раскадровку или ваш код).