簡體   English   中英

如何制作僅在應用程序首次打開時顯示的視圖控制器?

[英]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的地方。

我通常通過創建一個名為AppConfigCoreData實體來解決此問題,並為它提供與應用程序狀態, 打開時間,用戶設置等有關的任何重要屬性。

在應用程序啟動,如果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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM