2013-07-06 81 views
1

PageViewController我有一些pageViewControllers,我把他們scrollView垂直滾動。IOS - 內滾動型

一切工作正常,直到我改變任何pageViewController頁面 - 如果頁面不是第一次那麼pageViewController沒有垂直滾動迴應。

視圖層次結構:

  • mainViewControllers查看

    • 滾動視圖

      • pageViewControllers查看

終於想通了!

我擋住了pageViewController垂直方向的手勢識別器。 現在它的工作!

pageViewController.m

- (BOOL) gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer 
{ 
    if ([gestureRecognizer isKindOfClass:[UIPanGestureRecognizer class]]){ 
     UIPanGestureRecognizer *pan = gestureRecognizer; 
     if(ABS([pan velocityInView:self.view].y) > ABS([pan velocityInView:self.view].x)){ 
      return NO; 
     }   
    } 
    return YES; 
} 
+1

不知道某人如何能夠upvote一個問題什麼需要隨機猜測的可能原因。顯示如何配置視圖層次結構的代碼,您添加的任何手勢... – Wain

+0

@增加了層次結構。我不創建任何手勢識別器,只需使用scrollView和pageViewController並使用dataSource對象將viewControllers提供給pageViewController。 –

回答

1

你有設置scrollView.canCancelContentTouches = NO;

+0

謝謝,但這並沒有幫助。 –

+0

所以,我明白你有多個'pageViewControllers'可以在'scrollview'中說一個在另一個下,並且你想在'pageViewControllers'內垂直滾動。那是對的嗎? – soryngod

+0

差不多。我想垂直滾動scrollView並水平翻頁pageControllers內的頁面。 –