为什么要执行我的segue?

时间:2016-08-23 14:24:25

标签: ios swift

在我的iOS应用中,我有Button的登录信息,可以从viewController转到另一个@IBAction func logInButton(sender: AnyObject) { if loggedIn == true { // user is signed in print("A user is logged in.") uid = user.uid self.currentUser(uid) self.performSegueWithIdentifier("logIn", sender: sender) } else { print("No current user.") let anim = CAKeyframeAnimation( keyPath:"transform" ) anim.values = [ NSValue( CATransform3D:CATransform3DMakeTranslation(-10, 0, 0 ) ), NSValue( CATransform3D:CATransform3DMakeTranslation( 10, 0, 0 ) ) ] anim.autoreverses = true anim.repeatCount = 2 anim.duration = 7/100 self.passwordTextField.layer.addAnimation( anim, forKey:nil ) self.welcomeTextLabel.hidden = false self.welcomeTextLabel.text = "Please sign in first" } } ,使用以下功能:

viewDidLoad()

loggedIn内运行的函数会更新loggedIn == false值。我在viewController(基于控制台输出)时测试了此函数,并且应用程序根据在后续require 'bundler/setup'上执行的代码崩溃。我知道它崩溃的原因(没有用户数据),但我不知道为什么会执行segue。

如果您需要更多代码进行诊断,请询问。

1 个答案:

答案 0 :(得分:4)

在故事板中,您需要在两个视图控制器之间创建segue而不是DestinationViewController的按钮。

请删除该segue并从LoginViewController创建一个segue到DestinationViewController。