按钮按下segue不工作

时间:2015-07-25 02:12:41

标签: ios swift

我没有使用故事板部分来完全设计UI,但我确实在VC之间设置了故事板和segues。从我的启动画面,我希望viewcontroller从一个转换到另一个,通过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名称是正确的)。谁能提供任何见解?

3 个答案:

答案 0 :(得分:1)

您的按钮操作方法pressed:必须是视图控制器的顶级功能,而不是嵌套在viewDidLoad中。

答案 1 :(得分:0)

你是如何表演segue的?如果是推动,您可能需要将视图控制器嵌入导航控制器中。否则使用present而不是推动视图控制器。

答案 2 :(得分:-1)

您需要覆盖'准​​备搜索方法"用新的视图控制器替换当前的视图控制器:

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"
                }

            }
     }