我遇到了我的UIPageViewController問題。我已經做了什麼sofar: 1.在pageViewController上,您可以左右滑動,以更改VC 2.添加橫向菜單。當添加橫向菜單,我創建pangesture識別並將其添加到pageContentVC(這樣我就可以拖動pageContentVC以關閉工具欄菜單)如何在一個視圖中保留兩個gestureRecognizers並在它們之間切換?
var menuViewController: UIViewController! {
didSet {
self.exitPanGesture = UIPanGestureRecognizer()
self.exitPanGesture.addTarget(self, action:"handleOffstagePan:")
// self.exitPanGesture.view?.userInteractionEnabled = false
self.sourceViewController.view.addGestureRecognizer(self.exitPanGesture)
}
}
這裏我設置pageContentVC到sourceVC的TransitionManager的:
func resetToMainPage(index: Int!) {
/* Getting the page View controller */
mainPageViewController = self.storyboard?.instantiateViewControllerWithIdentifier("MainPageViewController") as UIPageViewController
self.mainPageViewController.dataSource = self
self.mainPageViewController.delegate = self
let pageContentViewController = self.viewControllerAtIndex(index)
self.transtionManger.sourceViewController = pageContentViewController // adding swipe to the pageContentViewControlle in order to close menu
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)
}
關閉菜單後,我禁用了pangesture識別器。 `VAR presentingP:布爾{ didSet { 如果presentingP ==真{// 只啓用時的menucontroller視圖呈現
self.exitPanGesture.view?.userInteractionEnabled = true }else{ // disable gesture recognizer when menu is not presented self.exitPanGesture.view?.userInteractionEnabled = false isMenuVisible = false } }
} `SOFAR手勢識別,我可以刷卡離開,並正確地改變VC。 問題是我無法在VC上滾動tableView。在禁用pageContentVC手勢之後,除了向左和向右滑動(更改VC)之外,所有內容都將變爲禁用狀態。問題:如何在一個視圖中保留兩個gestureRecognizers並在它們之間切換?
它的工作原理!當我禁用exitPanGesture!是否有可能而不是分配PageContentViewController分配PageviewController?爲什麼這不起作用? –