UIPageViewController里面的UITableViewController,如何防止对角线拖动

时间:2014-12-30 03:57:41

标签: ios uitableview uiscrollview uigesturerecognizer uipageviewcontroller

我有一个UIPageViewController,它可以水平滚动UITableViewController类的不同实例。

我需要检测用户拖动的方向并锁定另一个方向,因为此刻可以向任何方向滚动,即水平方向的uipageview和垂直方向的uitableview同时滚动

我正在寻找像天气应用程序这样的行为,您可以在其中水平或垂直滚动​​。

这是我有的错误行为:http://gfycat.com/LeafyWigglyGaur

1 个答案:

答案 0 :(得分:0)

我从UIPageView切换到UICollectionView并且它仍然没有工作。也许这是我的观点设置,我不知道。

然而,在我将UICollectionView和UITableView子类化后,它最终工作,并在两者上实现了以下UIGestureRecognizer委托方法:

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {

    if ([gestureRecognizer isKindOfClass:[UIPanGestureRecognizer class]] && [otherGestureRecognizer isKindOfClass:[UIPanGestureRecognizer class]] ) {
        return NO;
    }
    return YES;
}

实现此目的的两个uiscrollviews应该锁定滚动方向