如何在UIPageViewController上禁用左/右滚动?

时间:2016-10-05 14:49:24

标签: swift uipageviewcontroller

我一整天都在研究这个问题,有很多关于此的帖子但是我还没有设法找到对我有帮助的任何帖子!

我有一个UIPageViewController,它显示两个视图(它不是根视图)。

基本上当我从UIPageViewController中的其中一个视图添加一个函数时,我希望能够禁用滚动...?

这有可能吗?!

非常感谢任何有帮助的人!

1 个答案:

答案 0 :(得分:1)

刚刚找到了解决方案!

在页面视图控制器中,添加以下内容

    override func viewDidLoad(){
        super.viewDidLoad()
        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(yourpageviewcontroller.enableSwipe(_:)), name:"enableSwipe", object: nil)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(yourpageviewcontroller.disableSwipe(_:)), name:"disableSwipe", object: nil)

    }
    func disableSwipe(notification: NSNotification){
        self.dataSource = nil
    }

func enableSwipe(notification: NSNotification){
    self.dataSource = self
}

在您的子视图控制器中,您可以通过以下方式发布通知。

NSNotificationCenter.defaultCenter().postNotificationName("enableSwipe", object: nil)

OR

NSNotificationCenter.defaultCenter().postNotificationName("disableSwipe", object: nil)