如何同步滚动'background scrollview'和'foreground scrollview'

时间:2012-01-08 09:42:25

标签: iphone uiscrollview scrollview

我有一个scrollView,它占据了我的屏幕的整个高度,所以它只有一个垂直滚动。完整视图的宽度约为320点。此视图包含一组图像,其组合宽度为320点。我把它设置为每次320点“捕捉”,给你一种浏览页面的感觉。到目前为止没问题,这也是在Apple的照片应用程序中完成的。

然而,我的图像具有透明度(我甚至不能100%确定这是可能的,但为了这个问题,我假设它是。)

所以在这个scrollview下面,我想要另一个滚动视图,它会自动滚动“上部”滚动视图。但是,当上部滚动视图向左或向右移动320点时(因为它“快照”)我希望下部只能移动我不知道50或60?必须找出什么有效,什么看起来不错。对于这个问题,我只想知道如何制作它并不重要。一旦我了解了更多的情况,我相信我会知道如何根据我的需要调整它。

1 个答案:

答案 0 :(得分:1)

- scrollViewDidScroll:方法中查看我的代码(文件中的最后一个方法) https://github.com/H2CO3/MyFile/blob/master/src/MFHexEditor.m

我将主UIScrollView的委托设置为self(例如,视图控制器或另一个指定的委托对象),然后使用@property contentOffset观察滚动视图的位置变化。在我的代码中,两个滚动视图必须滚动完全相同的数量,因此我将辅助UIScrollView的contentOffset设置为主滚动视图。您可以按如下方式重写此方法:

- (void) scrollViewDidScroll:(UIScrollView *)mainScrollView {

    auxiliaryScrollView.contentOffset = mainScrollView.contentOffset / 320.0 * 60.0;

}

希望这有帮助。