我使用下面的代碼來檢測應用程序是否爲首次運行:如何覆蓋初始視圖控制器上首次運行直通的AppDelegate
// Detect First Launch
let firstLaunch = NSUserDefaults.standardUserDefaults().boolForKey("FirstLaunch")
if firstLaunch {
print("Not first launch.")
Show()
}
else {
print("First launch, setting NSUserDefault.")
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "FirstLaunch")
}
我使用下面的函數來顯示的ViewController:
func Show(){
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier(「myViewController」) as! MyViewController
self.window?.rootViewController?.presentViewController(vc, animated: true, completion: nil)
}
。我把代碼下:func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
然而,當我建立並運行應用程序,彷彿什麼都沒有發生的初始視圖控制器中。我希望「myViewController」顯示爲FIRST(在應用程序首次啓動時在設備上顯示)。然而,首次啓動後,「myViewController」將不再顯示,除非用戶卸載並重新安裝應用程序。
有誰知道該怎麼做?
您是否在尋找'myViewController',然後將其關閉到通常是根的視圖控制器,或者您想要替換通常的根? –
@ konrad.bajtyngier,我需要第一個選項。我期待提供'myViewController'並關閉它以顯示實際的根目錄,而不是替換它。我只需要在第一次啓動時調用它.. – pinkBlossoms7
@ pinkBlossoms7當您安裝應用程序時,firstLaunch爲false,應用程序不會調用Show,除了第一次啓動以外,myViewController會顯示。 – Ethan