[英]How to make a view controller only appear the first time a user opens the app in swift
[英]How to make an view controller, which displays only when app opens first time?
我使用Xcode 6.4,我想制作一個viewController,它顯示一個設置,並且僅在應用程序首次啟動或設置包含nil時才打開。 我該怎么辦?
只需將標志設置為NSUserDefaults ...
if (!NSUserDefaults.standardUserDefaults().boolForKey("firstTimeKey")) {
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "firstTimeKey")
NSUserDefaults.standardUserDefaults().synchronize()
showViewController()
}
showViewController()是您調用應顯示一次的ViewController的地方。
我通常通過創建一個名為AppConfig
的CoreData
實體來解決此問題,並為它提供與應用程序狀態, 打開時間,用戶設置等有關的任何重要屬性。
在應用程序啟動,如果CoreData
實體不存在,比我創建它,知道它的第一次發射,我應該顯示“FirstLaunch”或“幫助” ViewController
。
這是我會做的一個例子:
override func viewDidLoad() {
super.viewDidLoad()
var fetch = NSFetchRequest(entityName: "AppConfig")
var appConfigs = managedObjectContext.executeFetchRequest(fetch, error: error) as! [AppConfig]
if let appConfig = appConfigs.first{
//App has already launched before
}else{
//Create a new AppConfig Object and save it in CoreData
//Present your FirstLaunch Controller
}
return nil
}
在上面的代碼中,我假設您了解CoreData的基本概念,並介紹了ViewController。 兩者都是相對基本的概念,因此我現在將其省略,但是如果有人確實需要幫助,我可以提供更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.