【发布时间】:2014-10-28 14:43:37
【问题描述】:
我想像这样快速展示一个细节视图控制器
let detailController = MyDetailUIViewController(nibName: "MyDetailUIViewController", bundle: NSBundle.mainBundle(), data:myData)
self.navigationController?.pushViewController(detailController, animated:true)
我遇到的问题是如何为 MyDetailViewController 编写初始化程序:
class MyDetailUIViewController: UIViewController {
private var data: MyData
init(nibName nibNameOrNil: String!, bundle nibBundleOrNil: NSBundle!, data:MyData) {
self.data = data
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
我收到一个错误,即我的数据属性在 super.init 调用时未初始化。谁能解释我如何做到这一点?我确信我可以将我的数据属性设为可选并在初始化后将其传入,但肯定有一种方法可以实现这一点。
【问题讨论】:
标签: swift uiviewcontroller initialization xib