I use the following code to scroll to top of the UICollectionView:
scrollView.scrollRectToVisible(CGRect(origin: .zero, size: CGSize(width: 1, height: 1)), animated: true)
However, on iOS 11 and 12 the scrollView only scrolls to the top, without revealing the large title of the UINavigationBar
(when prefersLargeTitle
has ben set to true
.)
The result I want to achieve:
It works as it is designed, you are scrolling to position
y = 0
, assign yourcontroller
to beUIScrollView
delegate and print out scroll offset:You will see when Large title is displayed and you move your scroll view a but and it jumps back to the Large title it will not print
(0.0, 0.0)
but(0.0, -64.0)
or(0.0, -116.0)
- this is the same value asscrollView.adjustedContentInset
, so if you want to scroll up and display large title you should do: