2009-12-27 111 views
2

使用Apple的PageControl示例代码我已经设法并行放置了几个UIWebViews,并且我可以左右滑动来浏览每个Web视图。你可以改变UIScrollView滚动的灵敏度吗?

我也可以向上/向下滚动以在每个网页视图中滚动。但是,我必须沿着y轴非常精确地移动我的手指以使webview向上/向下滚动 - 否则它会向左或向右滑动并显示相邻视图。

有没有办法降低左/右滚动的灵敏度(或增加上/下灵敏度)?还是有另一种技术我应该使用?

+0

你有没有想过这个? – 2010-03-16 12:14:36

回答

2

这可能有点复杂,但请尝试检查UIWebView的滚动属性是否为true,如果为true,则禁用UIScrollView上的滚动,直到Web视图不再滚动?

+0

这听起来像是一种可能的方式。但有没有办法来检测UIWebView是否滚动? – cannyboy 2009-12-28 01:10:24

+0

嗯...不是没有公开它的UIScrollView ......苹果不会允许的。对不起,我认为滚动视图方法暴露在UIWebView上,看起来它们不是。 – Jasarien 2009-12-28 21:25:26

2

尝试在您的UIScrollView上设置属性pagingEnabled = YESdirectionalLockEnabled = YES。这不会是完美的,但它肯定会有所帮助。

pagingEnabled文档

如果该属性的值是YES, 滚动视图上的 倍数视图边界当用户滚动停止。 默认值是NO

directionalLockEnabled文档

如果此属性是NO,滚动是 在水平和 垂直方向允许的。如果此属性 为YES且用户开始在 中拖动一个大致方向(水平方向或垂直方向 ),则滚动视图会禁止在另一个方向上滚动 。如果 拖动方向是对角线,则不会锁定滚动,并且 用户可以沿任何方向拖动,直到拖动完成 。默认值 是否