在我的项目中,我有一个与保存一个用户名的按钮相关联的文本字段。
但是,我想存储所有用户名并检查用户名是否已存在。
我不知道该怎么做。请高度赞赏任何帮助。
答案 0 :(得分:0)
对于这样的事情,你应该看看Realm - 它比CoreData使用起来要简单得多,而且很容易上手。
Ray Wenderlich网站上有一个很好的教程 - 就像大多数事情一样! http://www.raywenderlich.com/81615/introduction-to-realm
您需要做的就是创建一个用于保存用户名的类 - 以及任何其他与用户相关的信息 - 并在启动时加载该列表,以便检查用户是否已存在。如果您有新用户,则可以在列表中添加另一个用户。
答案 1 :(得分:-1)
如果您的数据不是很复杂,您可以使用NSUserDefaults
。它就像字典一样是一个关键值持久存储。
- (BOOL)saveUsername:(NSString *)username {
static NSString *const kUsernamesKey = @"com.usernames";
BOOL isNew = false;
NSArray *usernames = [[NSUserDefaults standardUserDefaults] valueForKey:kUsernamesKey];
if ([usernames contains:username] == false) {
NSMutableArray *mutableArray = [usernames mutableCopy];
[mutableArray addObject:username];
usernames = mutableArray;
isNew = true;
// Save it back to NSUserDefaults
[[NSUserDefaults standardUserDefaults] setValue:usernames forKey: kUsernamesKey];
[[NSUserDefaults standardUserDefaults] synchronize];
}
return isNew;
}
答案 2 :(得分:-1)
有两件事情很重要:
如果您想在关闭应用程序后保存用户名,则必须使用 NSUserDefaults 来保存数据。
Set是一种数据结构,只允许将唯一的用户名包含在集合中,因此请使用 NSMutableSet 。
要遵循的步骤:
1. create NSMutableSet object
( NSMutableSet *usernames =[[NSMutableSet alloc]init];)
2. for each button click event add username in usernames "Set"
( [usernames addObject:@"usernameString"];)
3.Save data in standardDefaults
( [[NSUserDefaults standardUserDefaults] setObject:usernames forKey:@"users"];)
( [[NSUserDefaults standardUserDefaults] synchronize];)
4.Get data from userDefaults
( NSMutableSet *usersSet =[[NSUserDefaults standardUserDefaults] valueForKey:@"users"];)