On Button Press segue不起作用



我没有完全使用故事板部分来设计UI,但我确实在VC之间设置了故事板和segue。从我的闪屏,我希望视图控制器从一个改变到下一个,通过segue或编程。

override func viewDidLoad() {
    super.viewDidLoad()
    let signupButton = UIButton()
    signupButton.addTarget(self, action: "pressed:", forControlEvents: .TouchUpInside)
    self.view.addSubview(signupButton)
    func pressed (sender:UIButton!){
        self.performSegueWithIdentifier("RegisterSegue", sender: signupButton)
    }
}

这个不起作用(segue的名称是正确的)。谁能给点见解?

按钮动作方法pressed:必须是视图控制器的顶层函数,不能嵌套在viewDidLoad中

如何执行segue?如果是推送也许你需要在导航控制器中嵌入视图控制器。否则使用present而不是推送视图控制器

你需要重写' prepareforsegue方法'来用新的视图控制器替换当前的视图控制器:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
            if (segue.identifier == "RegisterSegue") {
                if let viewController: NewVC = segue.destinationViewController as? NewVC{
                    viewController.passData = "Any data you want to pass"
                }
            }
     }

最新更新