Горизонтальный скролл-прыжок вверх и вниз во время прокрутки в Swift - PullRequest
0 голосов
/ 01 декабря 2018

Горизонтально UIScrollView с управлением страницей работает, но при прокрутке к последующим страницам вид перепрыгивает вверх и вниз.

Нажмите здесь , чтобы просмотреть запись моей проблемы на экране. (через Google Drive, загрузка файла не требуется.)

Вот мой код:

func setupSlideScrollView(slides: [Slide]) {

    slideScrollView.frame = CGRect(x: 0, y:0, width: view.frame.width, height: view.frame.height)
    slideScrollView.contentSize = CGSize(width: view.frame.width * CGFloat(slides.count), height: view.frame.height)


    for i in 0 ..< slides.count {
        slides[i].frame = CGRect(x: view.frame.width * CGFloat(i), y: 0, width: view.frame.width, height: view.frame.height)
        slideScrollView.addSubview(slides[i])
    }
}


func scrollViewDidScroll(_ scrollView: UIScrollView) {
    let pageIndex = round(slideScrollView.contentOffset.x/view.frame.width)
    pageControl.currentPage = Int(pageIndex)

}

1 Ответ

0 голосов
/ 03 декабря 2018

Я нашел решение.Под функцией scrollviewdidscroll я добавил следующие строки кода:

  func scrollViewDidScroll(_ scrollView: UIScrollView) {
 if scrollView.contentOffset.y > 0 || scrollView.contentOffset.y < 0 {
    scrollView.contentOffset.y = 0
 }
...