Как сделать складной заголовок в collectionView таким же, как заголовок Facebook? - PullRequest
0 голосов
/ 26 февраля 2020

Ребята, мне нужно сделать заголовок collectionView, и он должен работать так, как когда я прокручиваю заголовок, сворачивается до заданного значения c, затем сворачивание прекращается, и прокрутка продолжает прокручиваться, как и перед свертыванием, вы можете проверить это поведение в Facebook android приложение еще, мне нужно реализовать то же самое в iOS с помощью swift, я уже пытался сделать это с помощью метода делегата collectionView, который является "scrollViewDidScroll", и это был myCode

func scrollViewDidScroll(_ scrollView: UIScrollView) {
     let layout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout
        if scrollView.contentOffset.y > 199 {
            headerHeight = 101
            layout?.sectionHeadersPinToVisibleBounds = true
            collectionView.reloadData()
        } else if scrollView.contentOffset.y < 199 {
            headerHeight = 300
            layout?.sectionHeadersPinToVisibleBounds = false
            collectionView.reloadData()

        }
    }

PS: моя исходная высота заголовка составляет 300, а 199 - это часть, которую мне нужно скрыть после прокрутки, а значение 101 - это желаемая высота заголовка после прокрутки

Когда я реализовал этот фрагмент кода, все работает хорошо, но проблема в том, что когда я достигаю contentoffset.y из 199, ячейки collectionView немного смещаются вверх, а когда я прокручиваю <199, ячейки смещаются вниз, это быстрое перемещение происходит мгновенно, а не плавно, что является плохим UX , Как решить такую ​​ошибку, пожалуйста? </p>

...