从嵌入式UIPageViewController

时间:2018-02-14 14:59:54

标签: swift uiviewcontroller uipageviewcontroller member

我有一个UIViewController VC以模态方式打开。

此视图控制器使用故事板构建,包含导航栏和container view

容器视图嵌入UIPageViewController

UIPageViewController有自己的类。

从这个类我需要访问父UIViewController的成员(或者,在我的情况下它是相同的,将值传递给子视图控制器)。

怎么做?

我尝试打印出self.parentself.presentingViewController,但事实证明他们的值都是nil

我也试过了另一件事,但它表现不佳:在UIViewController中我用这种方式引用子视图控制器:

var pVC = self.childViewControllers[0] as! PageViewController

这样我可以将值传递给pageViewController:

pVC.myVariable = "Blue"

但我只能在viewDidAppear中阅读,而不能在viewDidLoad中阅读(而且速度很慢)。

我甚至试图在didSet的背景下做类似的事情:它的效果更好,但我不知道这是不是很正统。

1 个答案:

答案 0 :(得分:0)

不要在UIViewController类中设置值或变量。制作Initializer PageViewController并传递您想要更改的其他值。另外,根据您的需要制作一些方便的初始化器。这是最佳做法。在课堂上做任何课程的东西。

你能粘贴代码吗?这样我就可以给你想要达到的目标。