Я пытаюсь сделать вводные экраны для своего приложения, а именно экран условий обслуживания, с которым все пользователи должны согласиться при первой загрузке и запуске приложения. очевидно, как только пользователи соглашаются, я не хочу показывать им это снова каждый раз, когда они входят в приложение. как лучше всего это сделать? Я читал о NSUserDefaults, но после этого застрял.
Как сделать так, чтобы экран отображался только при первом запуске
comment
возможный дубликат iPhone : Как узнать, когда приложение запускается в первый раз?
- person chris   schedule 04.02.2015
comment
другой q находится в obj-c, чего я не знаю.
- person sterling archer   schedule 04.02.2015
Ответы (2)
В вашем AppDelegate или любом другом классе необходимо проверить статус первого запуска:
Bool isFirstRun = !NSUserDefaults.standardUserDefaults().boolForKey("kAppPreviousLaunchKey")
NSUserDefaults.standardUserDefaults().setBool(true, forKey:"kAppPreviousLaunchKey")
if isFirstRun {
// React here
}
person
Joshua Sullivan
schedule
04.02.2015
Поиграйте с этим фрагментом кода в классе 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")
}
person
Nati Lara-Diaz
schedule
14.07.2016