如何将init用于从情节提要中加载的视图控制器?

时间:2018-11-29 13:11:39

标签: ios swift

我总是像这样从情节提要中初始化视图控制器:

let controller = storyboard!.instantiateViewController(withIdentifier: "MyViewController") as! MyViewController

我想在init上初始化变量。通常,我只是将它们分配给controller.variable = x之类的控制器。我更喜欢使用init()函数,但是如果使用情节提要,似乎无法使用。最好的方法是什么?

1 个答案:

答案 0 :(得分:1)

我不认为,因此如果您为ViewController创建自己的init(),它将很有用。

您可以像下面这样简单地使用:

let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: "ViewController") as! ViewController
    controller.pageTitle = "XYZ"
    controller.pageNumber = 2

如果要将多个值传递给目标控制器,则如果所有值都定义了类别类,则也可以传递模型类。