UIScrolview优先考虑垂直和水平滚动

时间:2013-07-23 06:24:08

标签: iphone ios objective-c uitableview uiscrollview

我有一个场景,我正在使用一个水平滚动的视图列表,如分页。每个视图都有垂直滚动的tableviews。现在的问题是我想要垂直滚动。它几乎不允许我这样做。但是垂直方向很好。我可以安排这种方式,垂直滚动应该比水平更高的优先级?但两者都应该是可访问的。

2 个答案:

答案 0 :(得分:2)

在iOS 5中,UIScrollView公开了其UIPanGestureRecognizer

将自定义滑动的委托设置为self并将gestureRecognizer设置为属性或ivar,并使您的类符合<UIGestureRecognizerDelegate>协议。

然后,实施UIGestureRecognizerDelegate - gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:就像这样:

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
    if ([gestureRecognizer isEqual:self.swipe] && [otherGestureRecognizer isEqual:self.scrollView.panGestureRecognizer])
      {
         return NO;
      }
     return YES; //default
 }

答案 1 :(得分:1)

嗯,你有一个UIScrollView水平滚动和几个UITableView作为页面吗?我认为你的问题存在于拦截垂直平移手势的UIScrollView。尝试禁用UIScrollView的垂直滚动,这应该会有所帮助。

相关问题