swift - 在 UITableviewcells 中一起滚动 UIScrollviews

标签 swift uitableview swift3 uiscrollview

我有一个 UITableView,每个单元格内都有一个 UIScrollView。当 1 个 UIScrollView 移动时,所有其他 UITableViewCell 中的所有 UIscrollViews 都被迫滚动到相同的 x。

这很有效,除了 UIScrollView 动画工作不顺畅,当滚动时,手指离开屏幕时滚动停止,而不是像正常滚动动画那样减慢速度。

scrollViewDidScroll 内部,我使用以下方法更改其他 UIScrollViews:

for cell in self.sportTable.visibleCells {
            if scrollView != (cell as! MySportCell).scrollView {
                (cell as! MySportCell).scrollView.setContentOffset(self.currentPointInDetailedScroll ?? CGPoint(x: 0.0, y: 0.0), animated: false)
            }
        }

我基本上想要得到的是,所有 UITableViewCell 中的所有 UIScrollViews 将一起移动,并且当滚动并抬起手指时,所有 UIScrollViews 会放慢速度,而不仅仅是停下来,看起来像是被卡住了

<小时/>

最佳答案

读完你的问题后我很困惑。如果你想平滑滚动,这很容易。只需依赖 ScrollView 即可。

监听scrollview的变化事件并让其他scrollview进行同样的滚动。

Sample to scrolling

  1. 当 ScrollView 开始滚动时,记录它! (然后其他每个 ScrollView 都应该对他执行相同的操作)

  2. 当刚刚记录的 ScrollView 发生变化时,让所有其他 ScrollView 也发生变化。

关于swift - 在 UITableviewcells 中一起滚动 UIScrollviews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45129652/

相关文章:

ios - 当我尝试以编程方式添加 UIView 时,UITableViewCell 高度不会自动调整(而是压扁我的 UIView)

ios - JSONDecoder - "Expected to decode Dictionary<String, Any> but found a string/data instead."

ios - Quickblox Enterprise + Swift 3.0 + iOS 10 +,QBRequest重命名聊天对话框不正确

ios - 在 Swift 3.1 中用什么代替 NSEntityDescription

swift - 如何在 swift 单元测试中验证方法是否在具体类中被调用

ios - 当使用多个部分时,当部分数量可能发生变化时,如何对 tableView 单元格的删除/添加进行动画处理

ios - 为 UITableView 的自定义单元格的突出显示和选定状态实现两种不同的颜色

ios - 选择表格 View 单元格时显示自定义 UIImageView

ios - 当使用 swift3.0 执行按钮操作时,如何在 ios 移动设备中打开文档文件,例如(.pdf、.doc、.docx)?

swift - 翻屏时Auto-Rayout位置问题