一尘不染

在Swift中为Segue做准备

swift

我正面临错误消息:

"UIStoryboardSegue does not have a member named 'identifier'"

这是导致错误的代码

if (segue.identifier == "Load View") {
    // pass data to next view
}

在Obj-C上可以这样使用:

if ([segue.identifier isEqualToString:@"Load View"]) {
   // pass data to next view
}

我究竟做错了什么?


阅读 237

收藏
2020-07-07

共1个答案

一尘不染

这似乎是由于UITableViewController子类模板中的问题。它带有该prepareForSegue方法的一种版本,需要您解开序列。

将当前prepareForSegue功能替换为:

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
    if (segue.identifier == "Load View") {
        // pass data to next view
    }
}

这个版本隐式地解开了参数,所以应该没问题。

2020-07-07