如何在iOS 8/Swift中构建自定义视图控制器的呈现?变量初始化被证明是困难的



我有一个自定义的UIViewController子类,我想展示。我的Storyboard中的一个视图控制器中的一个按钮被连接起来来呈现这个自定义视图控制器。

在代码中,我想为正在呈现的新视图控制器设置几个@IBOutlet。我习惯在prepareForSegue中这样做,抓住destinationViewController,然后设置一些标签和图像视图等。

但现在在Swift和iOS 8中,我一直得到

不能展开

这让我认为,在ios8当prepareForSegue被称为视图控制器的子视图还没有全部创建?我不能在这一点上搞乱出口吗?我该怎么设置它们?我试着让这些多余的临时变量保存它们的数据(这看起来像是糟糕的设计和冗余),然后在viewDidLoad中设置实际的出口,但我得到了同样的错误,我的标签是viewDidLoad中的nil

我应该如何设置这些?

下面是如何使用prepareForSegue函数的示例:

if segue.identifier == "yourIdentifier" {
    let yourViewController = segue.destinationViewController as YourDestinationViewController
    yourViewController.receivedArray = listArray
}

如果这还不够,请让我知道并使用您正在使用的代码编辑您的问题。

最新更新