我没有使用故事板部分来完全设计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名称是正确的)。谁能提供任何见解?
答案 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"
}
}
}