41

我有一個帶有自定義UICollectionViewFlowLayout的UICollectionView。它水平滾動,每次只顯示一個項目(全高)。我有pagingEnabled = YES,以便它堅持頁面。當數據源只有一個項目時,UICollectionView不反彈

UICollectionView顯示特定日期內的照片。我最初有按鈕來改變+/- 1天的日期,但我認爲如果用戶可以通過第一張或最後一張圖像(超過預定閾值)拉取收集視圖來改變日期,那麼它會很整齊。我使用UIScrollView委託方法實現了這一點,並且它非常適合......如果集合視圖中有兩個或多個項目。

這很難描述,但如果只有一件物品,它不允許我將物品拉過它的邊界。 I.E.沒有反彈。

我想這種行爲,但我需要先解決這個問題。我在想,如果我刪除了pagingEnabled = YES並且使用了targetContentOffsetForProposedContentOffset:proposedContentOffset:withScrollingVelocity,那麼我可能能夠使它工作,但我真的很喜歡分頁啓用的清晰行爲。 (它們是互斥的)。

對此的任何想法?

回答

98

UICollectionView具有屬性alwaysBounceHorizontalalwaysBounceVertical。將水平設置爲YES did的竅門。

+13

要在Interface Builder中啓用此功能 - 請使用名爲「垂直反彈」的選項。 –

+0

'alwaysBounceHorizo​​ntal'和'alwaysBounceVertical'源自視圖'UIScrollView'。 – tounaobun

+0

所以我可以說'UITableView'將這個屬性設置爲'YES'作爲默認值,因爲它可以是邊界? –

2

感謝@VaporwareWolf,答案是正確的。我想補充的補充是:

不要忘記在同一時間(通過故事板或代碼)的bounces屬性設置爲YES

相關問題