2016-03-28 3 views
-1

私は現在、各ラウンドが別のView Controllerで表されているクイズゲームアプリを持っています。ユーザーがアプリケーションを終了し、後でアプリケーションを再オープンすると、同じスコアを保持し、最後に表示されたのと同じviewcontrollerにとどまります。私はNSUserDefaultsが行く最後のラウンドを覚えてそれを設定する方法がわからないと思う。どんな助けもありがとう!Swiftで最後に使用したviewControllerに基づいてアプリを開く方法は?

答えて

1

あなたはユーザーのデフォルト値が使用してオブジェクトを作成することができます

// Create an object reference to the NSUserDefaults class 
let defaults = NSUserDefaults.standardUserDefaults() 

あなたが要求し、決算やアプリを開くと、永続的になり、このNSUserDefaultsクラスのオブジェクトを設定することができます。

// Set a string for a key 
defaults.setObject("a string", forKey: "myVar") 

// Request the object associated with the key: 
let myVar : String = defaults.stringForKey("myVar") 

オブジェクトの保存時に値を保存して更新することができます。

// Create a reference to the Storyboard file 
let storyboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 

// Create a reference to the ViewController you want to open 
let vc : UIViewController = storyboard.instantiateViewControllerWithIdentifier("ID FROM NSUserDefaults") 

// Present the ViewController 
dispatch_async(dispatch_get_main_queue(), { 
    self.presentViewController(vc, animated: true, completion: nil) 
}) 
+0

これは良いですが、それが提示したときに、私はパートを置く場所を保存:あなたはビューコントローラのストーリーボードIDを保存する場合は、アプリを使用して表示されたときにアプリを起動すると、あなたはそれを再度開くことができたときに提示したいですviewController、viewDidLoad? – SwiftyJD

+0

あなたの 'AppDelegate'の@SwiftyJD – kye

関連する問題