【发布时间】:2015-05-27 16:56:42
【问题描述】:
我正在制作类似于 Euro Sport 的应用程序。我的 rootviewController 是 pageViewController,它有 3 个 VC。左右滑动可以更改 VC。接下来,我添加了侧边栏菜单。我想将手势识别器添加到整个 rootViewController。这就是我添加手势的方式:
self.exitPanGesture = UIPanGestureRecognizer()
self.exitPanGesture.addTarget(self, action:"handleOffstagePan:")
self.sourceViewController.view.addGestureRecognizer(self.exitPanGesture)
self.sourceViewController.navigationController?.view.addGestureRecognizer(self.exitPanGesture)
当我在导航栏上拖动 rootviewController 时,它可以工作。但是segmentcontrol和pageContent等其他部分不起作用。
我在这里设置 sourceViewController:
func resetToMainPage(index: Int!) {
/* Getting the page View controller */
mainPageViewController = self.storyboard?.instantiateViewControllerWithIdentifier("MainPageViewController") as UIPageViewController
self.mainPageViewController.dataSource = self
self.mainPageViewController.delegate = self
pageContentViewController = self.viewControllerAtIndex(index)
// self.transtionManger.sourceViewController = pageContentViewController // adding swipe to the pageContentViewControlle in order to close menu
self.transtionManger.sourceViewController = mainPageViewController
self.mainPageViewController.setViewControllers([pageContentViewController!], direction: UIPageViewControllerNavigationDirection.Forward, animated: true, completion: nil)
self.mainPageViewController.view.frame = CGRectMake(0, 102, self.view.frame.width, self.view.frame.height)
self.addChildViewController(mainPageViewController)
self.view.addSubview(mainPageViewController.view)
self.mainPageViewController.didMoveToParentViewController(self)
}
那么,我的问题是如何将手势识别器添加到整个rootViewController,包括navbar、segmentcontrol、pageviewcontrol?
【问题讨论】:
标签: ios swift uigesturerecognizer gesture