【问题标题】:Horizontal scrollview jump up and down during Scrolling in swift在快速滚动期间水平滚动视图上下跳跃
【发布时间】:2018-11-30 22:26:46
【问题描述】:

带有页面控制的水平UIScrollView 正在工作,但在滚动到后续页面期间,视图会上下跳跃。

点击here查看我的问题的屏幕录像。 (通过 Google 云端硬盘,无需下载文件。)

这是我的代码:

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)

}

【问题讨论】:

  • 能否提供一些您尝试过的代码。
  • 给我 20 分钟。在回家的路上。
  • 你能给你的邮箱吗?这个网站不允许我添加代码文件。我想通过电子邮件将项目发送给您。
  • 在 Stack Overflow 上,我们希望让所有人都能看到它。相反,复制文件中的所有代码并将其粘贴到您的问题中(省略与您的问题无关的任何不必要的代码)。
  • 我能够编辑帖子以添加代码。往上看。我还创建了一个我想分享的屏幕录像,因为这是描述问题的最佳方式。

标签: swift uiscrollview scrollview


【解决方案1】:

我找到了解决方案。在函数 scrollviewdidscroll 下我添加了这些代码行:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    • 1970-01-01
    相关资源
    最近更新 更多