【问题标题】:How to use init for view controller loaded from storyboard?如何为从情节提要加载的视图控制器使用init?
【发布时间】:2018-11-29 13:11:38
【问题描述】:

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

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

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

【问题讨论】:

标签: ios swift


【解决方案1】:

我不认为如果你为 ViewController 创建自己的 init() 会很有用。

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

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

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

【讨论】:

    猜你喜欢
    • 2014-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 1970-01-01
    • 2014-02-17
    • 1970-01-01
    相关资源
    最近更新 更多