【问题标题】:How to make a screen show only on initial launch如何仅在初始启动时显示屏幕
【发布时间】:2015-02-04 03:52:45
【问题描述】:
我正在尝试为我的应用制作介绍屏幕 - 即所有用户在第一次下载和运行应用时必须同意的服务条款屏幕。显然,一旦用户同意,我不想在他们每次登录应用程序时再次向他们展示。这样做的最佳方法是什么?我一直在阅读有关 NSUserDefaults 的内容,但在那之后我几乎陷入了困境。
【问题讨论】:
标签:
ios
swift
xcode6
launch-screen
【解决方案1】:
在您的 AppDelegate 或任何需要检查首次运行状态的类中:
Bool isFirstRun = !NSUserDefaults.standardUserDefaults().boolForKey("kAppPreviousLaunchKey")
NSUserDefaults.standardUserDefaults().setBool(true, forKey:"kAppPreviousLaunchKey")
if isFirstRun {
// React here
}
【解决方案2】:
在 AppDelegate 类中使用这段代码
let launchedBefore = NSUserDefaults.standardUserDefaults().boolForKey("launchedBefore")
if launchedBefore {
print("Not first launch.")
}
else {
print("First launch, setting NSUserDefault.")
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "launchedBefore")
}