ios - 向按钮添加条件(Swift)

标签 ios swift xcode firebase

我想给按钮添加条件。

因此,如果条件为真,将通过 segue 打开另一个 View !

否则,什么也不会发生,并且会向用户显示警告。

这两个 View 由导航 Controller 链接。

 @IBAction func AddButton(_ sender: AnyObject) {

    if FIRAuth.auth()?.currentUser != nil {
        self.performSegue(withIdentifier: "AddDevice", sender: nil)

    }
    else {

        let alert = UIAlertController(title: "Sorry", message:"You have to Register First", preferredStyle: .alert)
        alert.addAction(UIAlertAction(title: "Ok", style: .default) { _ in })
        self.present(alert, animated: true){}
    }

}

这是我试过的!但是并没有给出我想要的结果。

最佳答案

试试这个!

 @IBAction func AddButton(_ sender: AnyObject) {
FIRAuth.auth()?.addAuthStateDidChangeListener { auth, user in
    if let user = user {
    self.performSegue(withIdentifier: "AddDevice", sender: nil)
     } 
    else {
    let alert = UIAlertController(title: "Sorry", message:"You have to Register First", preferredStyle: .alert)
    alert.addAction(UIAlertAction(title: "Ok", style: .default) { _ in })
    self.present(alert, animated: true){}
    }
 }
}

关于ios - 向按钮添加条件(Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39583771/

相关文章:

ios - 是否可以将 React Native 与 socket.io 结合使用

swift - 获取错误域=NSURLErrorDomain代码=-1004 "Could not connect to the server."UserInfo={NSUnderlyingError=0x7fcb0e1de350

ios - 使用 Cocoapods 复制符号 iOS

ios - 如何在创建另一个同名 SKSpriteNode 后与 SKSpriteNode 交互?

iOS "calculationMode"等效的 Android 动画

ios - UITableViewCells 中的复选标记显示不正确

swift - 如何防止短背景计时器漂移?

ios - 自定义 UITableViewHeaderFooterView 标签被截断

swift - 无法识别的选择器发送到实例 swift。 'NSInvalidArgumentException' 错误

ios - 未捕获的异常 'NSInvalidArgumentException',原因: 'Receiver .. has no segue'