我有 2UIScrollview
秒相邻。它们在垂直值上连接在一起。(上和下)
事实证明,我在两个视图中绘制了某种图形(实际上是在每个视图中......但图形(一条线)在视觉上穿过)。在某些时候,当您疯狂地平移并开始加速和减速时,滚动视图不会保持水平。停止此操作时,它们会再次升级(在某种动画中),但我实际上希望它们粘在一起,无论用户做什么。
我玩了很多,但我的想法已经不多了,所以任何帮助将不胜感激。
谢谢
汤姆
我有 2UIScrollview
秒相邻。它们在垂直值上连接在一起。(上和下)
事实证明,我在两个视图中绘制了某种图形(实际上是在每个视图中......但图形(一条线)在视觉上穿过)。在某些时候,当您疯狂地平移并开始加速和减速时,滚动视图不会保持水平。停止此操作时,它们会再次升级(在某种动画中),但我实际上希望它们粘在一起,无论用户做什么。
我玩了很多,但我的想法已经不多了,所以任何帮助将不胜感激。
谢谢
汤姆
所以如果你慢慢平移它会起作用吗?我认为这取决于您如何将 uiscrollviews 连接在一起...我的意思是您将垂直值从一个传递到另一个,但不是加速度,不是吗?请发布一些代码
是的,它工作缓慢。如果我非常快速地平移它甚至可以很好地工作,但是如果我做了很多停止和加速之类的事情,它就会中断。
基本上我在我的视图控制器中创建了我的 uiscrollview 并将它们连接到 IB 中。我正在使用 scrollviewdidScroll-delegate-method 使它们保持同步。我也用 KVO 试过,但没有区别。有趣的是,我在内容滚动视图之上也有一个滚动视图。无论我在做什么,我从来没有设法让它们(contentscroll 和 columnscroll)不同步。
(void)scrollViewDidScroll:(UIScrollView *)scrollView { if (scrollView.dragging || scrollView.tracking) {
if (rowScrollView == scrollView)
{
[contentScrollView setContentOffset:CGPointMake(contentScrollView.contentOffset.x, scrollView.contentOffset.y) animated:NO];
}
else if (columnScrollView == scrollView)
{
[contentScrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, contentScrollView.contentOffset.y) animated:NO];
}
else if (contentScrollView == scrollView)
{
[columnScrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0) animated:NO];
[rowScrollView setContentOffset:CGPointMake(0, scrollView.contentOffset.y) animated:NO];
}
}
谢谢你
汤姆