2016-11-29 4 views
0

UserDefaults私は、最初のインストール時にWalkthroughを提示しなければならない時の値を教えてくれます。インストールすると、 "firstAccessToApp"キーの値がtrue私がデバイスからアプリケーションを削除して再インストールした場合、bool値がfalseであるためウォークスルーは表示されません。デバイスからアプリケーションを削除すると値を変更できますか?これは私のコードです:アプリを削除するときにUserDefaults boolの値を変更します

if !defaults.bool(forKey: "firstAccessToApp") { 
     present(Walkthrough(), animated: true, completion: nil) 
     UserDefaults.standard.set(true, forKey: "firstAccessToApp") 
     UserDefaults.standard.synchronize() 
    } 

答えて

1

アプリをインストールすると、キーがUserDefaultsに存在しないと、あなたがそれにアクセスしようとすると、それはfalseあるデフォルト値を返します。あなたが最初にインストールし、アプリを開いたときtrueにそれを設定するには、あなたのfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Boolメソッドにこのコードを追加することができます:それは作品

let defaults = UserDefaults.standard 

if (!defaults.dictionaryRepresentation().keys.contains("firstAccessToApp")) { 
    defaults.set(true, forKey: "firstAccessToApp") 
    defaults.synchronize() 
} 
+1

、ありがとうございました! –

関連する問題