Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 未调用Segue的准备_Ios_Uiviewcontroller_Segue_Uistoryboardsegue - Fatal编程技术网

Ios 未调用Segue的准备

Ios 未调用Segue的准备,ios,uiviewcontroller,segue,uistoryboardsegue,Ios,Uiviewcontroller,Segue,Uistoryboardsegue,我已经读了十几篇这样的帖子。他们中的一些人建议使用覆盖,但我得到了一个编译错误,因为函数定义现在是open self.user = user performSegueWithIdentifier("selectPayment", sender: nil) func prepare(for segue: UIStoryboardSegue, sender: Any?) { let vc = segue.destinationViewController as! SelectPayment

我已经读了十几篇这样的帖子。他们中的一些人建议使用覆盖,但我得到了一个编译错误,因为函数定义现在是
open

self.user = user
performSegueWithIdentifier("selectPayment", sender: nil)

func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    let vc = segue.destinationViewController as! SelectPaymentViewController
    vc.user = user
}

底部函数永远不会被调用。为什么会这样?针对iOS
9.2

这只是调用语法的问题

正确的实现是


覆盖函数prepareforsgue(segue:UIStoryboardSegue,sender:AnyObject?){

不调用哪个函数请尝试将发件人从nil更改为
self
,同时确保
selectPayment
是您在故事板中为segue指定的正确名称。底部函数是我文章中唯一的
func
定义。在UIViewController.h中记录为
@可用(iOS 5.0,*)open func prepare(对于segue:UIStoryboardSegue,发送方:有吗?)
@apineda不起作用。您在视图控制器或您所述的任何其他类中在哪里编写了此代码…不允许重写,意味着您的代码不在视图控制器中…请在此共享完整的类您使用的是swift3或以下版本,这就是问题所在。我需要升级项目的Swift语法。谢谢但是你的问题是用swift 3写的,而不是下面,我在SWIFT3中添加答案的原因我之前确实收到了Xcode的提示,但是忽略了继续使用功能。