我有一个 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进行同样的滚动。
当 ScrollView 开始滚动时,记录它! (然后其他每个 ScrollView 都应该对他执行相同的操作)
当刚刚记录的 ScrollView 发生变化时,让所有其他 ScrollView 也发生变化。
关于swift - 在 UITableviewcells 中一起滚动 UIScrollviews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45129652/