我有一个UIViewController
VC以模态方式打开。
此视图控制器使用故事板构建,包含导航栏和container view
。
容器视图嵌入UIPageViewController
。
UIPageViewController有自己的类。
从这个类我需要访问父UIViewController的成员(或者,在我的情况下它是相同的,将值传递给子视图控制器)。
怎么做?
我尝试打印出self.parent
和self.presentingViewController
,但事实证明他们的值都是nil
。
我也试过了另一件事,但它表现不佳:在UIViewController中我用这种方式引用子视图控制器:
var pVC = self.childViewControllers[0] as! PageViewController
这样我可以将值传递给pageViewController:
pVC.myVariable = "Blue"
但我只能在viewDidAppear
中阅读,而不能在viewDidLoad
中阅读(而且速度很慢)。
我甚至试图在didSet
的背景下做类似的事情:它的效果更好,但我不知道这是不是很正统。
答案 0 :(得分:0)
不要在UIViewController
类中设置值或变量。制作Initializer
PageViewController
并传递您想要更改的其他值。另外,根据您的需要制作一些方便的初始化器。这是最佳做法。在课堂上做任何课程的东西。
你能粘贴代码吗?这样我就可以给你想要达到的目标。