无论如何,只有在应用程序启动时才显示UIAlertController?

时间:2015-07-07 22:22:57

标签: swift uialertcontroller

所以我在viewDidAppear部分中有以下代码

let theAlert = UIAlertController(title: "SUP", message: "DAWG", preferredStyle: UIAlertControllerStyle.Alert)
    theAlert.addAction(UIAlertAction(title: "sup!", style: UIAlertActionStyle.Default, handler: nil))
    self.presentViewController(theAlert, animated: true, completion: nil)

不要介意这些信息,我只是随机提出了​​这些信息:3

好的,无论如何我只能在应用程序启动时显示此消息吗?因为当我从另一个控制器返回时,会再次弹出此消息。

1 个答案:

答案 0 :(得分:3)

设置一个标志以指示消息是否已显示。

// first check to see if the flag is set
if alertShown == false {
    // show the alert
    alertShown = true
}

要使此行为在启动时保持不变,并且仅在第一次启动时显示,请保存到NSUserDefaults。

// when your app loads, check the NSUserDefaults for your saved value
let userDefaults = NSUserDefaults.standardUserDefaults()
let alertShown = userDefaults.valueForKey("alertShown")
if alertShown == nil {
    // if the alertShown key is not found, no key has been set.
    // show the alert.
    userDefaults.setValue(true, forKey: "alertShown")
}

您可以在根视图控制器viewDidLoad中处理这两个问题。