我需要在首选项中存储“user_session”和“game_deck”相关信息。
在我的应用程序中的某个时刻,我需要清除存储在“game_deck”中的所有数据,并且在注销时,我需要清除存储在“user_session”中的所有数据。
我通过指定首选项的文件名在 android 中实现了这个功能。
SharedPreferences prefs = getSharedPreferences(
"user_session", Context.MODE_PRIVATE);
Editor editor = prefs.edit();
editor.clear();
editor.commit();
和
SharedPreferences prefs = getSharedPreferences(
"game_deck", Context.MODE_PRIVATE);
Editor editor = prefs.edit();
editor.clear();
editor.commit();
当我为 iPhone 创建相同的项目时,如何在 Objective-C 中实现相同的功能?
我需要用
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
用于存储我的数据。但是我如何指定两个不同的默认值以便我可以清除特定默认文件中的所有变量?
提前致谢:)
最佳答案
NSUserDefault
与 Android 中的 SharedPreference
不同。这里有一个通用的 standardUserDefault
对象,您可以在其中保存所有数据。对于“user_session”和“game_deck”,没有单独的用户默认设置。
你可以做的是创建一个字典
NSMutableDictionary *userSessionDict = [[NSMutableDictionary alloc] init];
[userSessionDict setObject:@"someUsername" forKey:@"username"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[default setObject:userSessionDict forKey:@"user_session"];
//you can remove using
[default removeObjectForKey:@"user_session"];
关于ios - 如何为 NSUserDefaults 指定名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15151592/