UIAlertController 错误当在 swift 中以模态呈现的视图控制器中调用时

Posted

技术标签:

【中文标题】UIAlertController 错误当在 swift 中以模态呈现的视图控制器中调用时【英文标题】:UIAlertController Error When called in a modal presented view controller in swift 【发布时间】:2015-08-20 07:02:13 【问题描述】:

我有一个模态显示的视图控制器,当我运行 UIAlertController 时,不断收到错误消息。我该如何解决这个问题。

警报由一个按钮触发,该按钮检查文本字段是否为空。

@IBAction func registerAction(sender: AnyObject) 
if(userEmail.isEmpty)
        alertMessage("Fields Are Empty")
    




func alertMessage(userMessage:String)  
    var myAlert = UIAlertController(title: "Alert", message: userMessage, preferredStyle: UIAlertControllerStyle.Alert)
    let okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)
    myAlert.addAction(okAction)
    self.presentViewController(myAlert, animated: true, completion: nil)

运行警报时出错

Warning: Attempt to present <UIAlertController: 0x7f9bbb9060d0>  on <AlertApp.CustomSignupVC: 0x7f9bb94accb0> which is already presenting <UIAlertController: 0x7f9bbb926660>

【问题讨论】:

它没有连接到一个segue 【参考方案1】:

尝试将其添加到主操作队列中。

dispatch_async(dispatch_get_main_queue()) 
    self.presentViewController(myAlert, animated: true, completion: nil)

检查这个相关问题:Presenting a view controller modally from an action sheet's delegate in ios8 - iOS10

【讨论】:

@MugunthanBalakrishnan 随时欢迎 :)

以上是关于UIAlertController 错误当在 swift 中以模态呈现的视图控制器中调用时的主要内容,如果未能解决你的问题,请参考以下文章

UIAlertController 崩溃错误 [重复]

我有错误:“UIAlertController”没有可见界面

呈现 UIAlertController 时出现 CGContext 错误

UIAlertController 和 UIViewAlertForUnsatisfiableConstraints 错误

子类化 UIAlertController 并遇到运行时错误

UIAlertController 中的 UIPickerView 仅在 iPhone 中正确时在 iPad 中给出错误?