如何保存多个用户名?

时间:2016-02-06 10:39:33

标签: ios objective-c username

在我的项目中,我有一个与保存一个用户名的按钮相关联的文本字段。

但是,我想存储所有用户名并检查用户名是否已存在。

我不知道该怎么做。请高度赞赏任何帮助。

3 个答案:

答案 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"];)