我正在尝试在应用程序首次加载时添加uialertview或控制器。目前,我的viewDidLoad
方法中有这个代码。
let welcomeAlert = UIAlertController(title: "hola", message: "this is a test.", preferredStyle: UIAlertControllerStyle.Alert)
welcomeAlert.addAction(UIAlertAction(title: "ok.", style: UIAlertActionStyle.Default, handler: nil))
self.presentViewController(welcomeAlert, animated: true, completion: nil)
为什么警报视图不显示?我使用了相同的代码,但是在一个按钮的
IBAction
内部,它工作正常。 最佳答案
您应该在viewDidAppear:
函数中显示警报。要显示子视图或其他视图控制器,父视图控制器必须位于视图层次结构中。viewDidAppear
函数“通知视图控制器其视图已添加到视图层次结构中。”
*从documentation
所以,您的代码可能看起来像这样:
class MyViewController: UIViewController {
override func viewDidAppear(animated: Bool){
super.viewDidAppear(animated)
let welcomeAlert = UIAlertController(title: "hola", message: "this is a test.", preferredStyle: UIAlertControllerStyle.Alert)
welcomeAlert.addAction(UIAlertAction(title: "ok.", style: UIAlertActionStyle.Default, handler: nil))
self.presentViewController(welcomeAlert, animated: true, completion: nil)
}
}