UICollectionView doesn't bounce when datasource has only 1 item

IphoneIosUicollectionviewUiscrollviewdelegateUicollectionviewlayout

Iphone Problem Overview


I have a UICollectionView with a custom UICollectionViewFlowLayout. It scrolls horizontally and only shows one item at a time (full height). I have pagingEnabled = YES so that it sticks to pages.

The UICollectionView shows photos within a particular day. I initially had buttons to change the day +/- 1 day, but I thought it would be neat if the user could pull on the collection view past the first or last image (past a predetermined threshold) to change the day. I implemented this using the UIScrollView delegate methods and it works great...... if there are 2 or more items in the collection view.

This is hard to describe, but if there is only 1 item, it doesn't allow me to pull the item past it's bounds. I.E. there is no bounce to it.

I'd like to have this behavior, but I need to overcome this problem first. I'm thinking that if I removed pagingEnabled = YES and used targetContentOffsetForProposedContentOffset:proposedContentOffset:withScrollingVelocity, that I may be able to get it to work but I really enjoy the snappy behavior that paging enables. (They are mutually exclusive).

Any ideas on this?

Iphone Solutions


Solution 1 - Iphone

UICollectionView has the properties alwaysBounceHorizontal and alwaysBounceVertical. Setting the horizontal to YES did the trick.

Solution 2 - Iphone

Thanks for @VaporwareWolf ,the answer is correct. I want to add a supplement that:
>DO NOT forget setting the bounces property to YES at the same time(through storyboard or your code).

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionVaporwareWolfView Question on Stackoverflow
Solution 1 - IphoneVaporwareWolfView Answer on Stackoverflow
Solution 2 - IphoneguozqzzuView Answer on Stackoverflow