UIScrollView垂直平移捕捉到视图的顶部或底部

时间:2010-10-21 08:12:19

标签: iphone objective-c uiscrollview orientation panning

我的图像是320x480,在方向改变时,这个图像显然不在视野范围内。有一些图像的焦点位于它的底部切断(这是不可取的)。然而,我的问题是当用户垂直平移以查看完整图像时,视图似乎捕捉到底部意味着焦点的顶部被截止。我希望发生的是用户可以“自由滚动”图像并可能移动图像使焦点位于中心屏幕,而不是切断顶部和底部。我理解这是一个用文字描述的难题,所以我附上了一些图片。

这就是它的开始:

alt text

这就是它的底部:

alt text

这是我希望拥有但不能的观点:

alt text

有没有办法控制这种“捕捉”或者在处理这种方向时我可以用它来覆盖它的方法?我的问题是,我希望它在向左/向右平移到ScrollView中的其他图像时捕捉,而不是向上/向下。

编辑:

pagingEnabled是控制此捕捉的属性,但无论如何都要检测移动是向上/向下还是向左/向右并在每种情况下禁用或启用此属性?

欢呼您提供任何帮助

1 个答案:

答案 0 :(得分:1)

您可以尝试使用两个嵌套滚动视图;一个仅限于在启用分页的情况下水平滚动,并且一个(如果您正在显示多个图像,则为每个页面一个?)仅限于在禁用分页的情况下垂直滚动。默认情况下,这将像你说的那样工作,水平分页/捕捉但垂直自由滚动。但是,它只允许您一次向一个方向滚动(水平或垂直,而不是对角线)。

如果你想使用这样的嵌套滚动视图,但是你想允许同时向两个方向滚动/拖动,请看看我的解决方案:Nested UIScrollViews scrolling simultaneously