如何为我在 Swift 中以编程方式创建的 UIViewController 子类创建 init?
Posted
技术标签:
【中文标题】如何为我在 Swift 中以编程方式创建的 UIViewController 子类创建 init?【英文标题】:How do I create the init for a UIViewController subclass that I create programmatically in Swift? 【发布时间】:2014-06-30 18:45:59 【问题描述】:假设我的UIViewController
有两个属性,var animal: String
和 var color: UIColor
。
如何创建自定义init
,以便我可以轻松地在代码中创建它?
我想拥有:
init(animal: String, color: UIColor)
self.animal = animal
self.color = color
但是我得到一个编译器错误,我没有使用指定的初始化程序。我做错了什么/我应该怎么做?
【问题讨论】:
【参考方案1】:设置这些属性后调用super.init()
。这应该够了吧。您的方法应如下所示:
init(animal: String, color: UIColor)
self.animal = animal
self.color = color
super.init()
【讨论】:
通常在 Swift 中,super.init 应该被最后调用。 super.init() 不是 UIViewController 的指定初始化器以上是关于如何为我在 Swift 中以编程方式创建的 UIViewController 子类创建 init?的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 中以编程方式访问和更新 stackview 中的 label.text 或其他 UILabel 属性
在 Swift 中以编程方式创建 UITableViewController
如何在 Swift 中以编程方式创建 SplitViewController?
在 Swift 中以编程方式创建垂直 UIScrollView