2016-09-22 11 views

答えて

1

あなたが正しく理解している場合、ユーザーデータをグローバル変数に保存していますか?それは私には意味をなさないようです。

あなたはNSUserDefaultsなどのグローバル変数に等しくなるように意図されている場合、あなたは標準UserDefaultsからデータを削除するには、次のアプローチを使用することができます。

private func cleanUserDefaultsOnLogout() { 
    let standardDefaults = UserDefaults.standard 
    for key in standardDefaults.dictionaryRepresentation().keys { 
     standardDefaults.removeObject(forKey: key) 
    } 
    standardDefaults.synchronize() 
} 

私はあなたを誤解している場合、私を修正してください質問。

+0

私はNSUserDefaultsを使用すると思いますが、問題はさまざまな画面からアクセスできるようにする必要があるためです。そのため、それらをグローバル変数として使用しています。たとえば、私は、食事のリスト、Tab2 - 食事のリスト、Tab2 - 食事のリスト、および食事3からのタブ3 - 成分を持っています。それらがローカルでNSUserDefaultsであれば、アクセスできないでしょう。それとも私はこれを誤解していますか? –

+0

NSUserDefaultsは、異なるViewControllerでアクセス可能です。新しいオブジェクト 'UserDefaults.standard'を導入し、キーを使用してアクセスします。 – cr0ss

+0

私はそれを知りませんでした。とてもありがとう、非常に便利な@ cr0ss –

関連する問題