Как сохранить два поля в NSMutableArray? - PullRequest
0 голосов
/ 20 августа 2011

я храню идентификатор студента в массиве NSMUtableArray. Я пытаюсь расширить массив таким образом, чтобы он принимал два поля, а не только идентификатор студента

[[NSUserDefaults standardUserDefaults] synchronize];
NSArray *archivedArray = [NSKeyedUnarchiver unarchiveObjectWithFile:[self dataFilePath]];
if (archivedArray == nil) {

    data = [[NSMutableArray alloc] init];         
} else {
    data = [[NSMutableArray alloc] initWithArray:archivedArray];
}

Как видите, переменная данных ожидает только одно поле

1 Ответ

4 голосов
/ 20 августа 2011

Если я правильно понимаю ваш вопрос, вы хотите иметь два (или более поздних) поля для каждой «записи» в массиве.

Один из распространенных способов сделать это - создать словарь споля, которые вам нужны, затем добавьте словари в массив:

NSDictionary *student1 = [NSDictionary dictionaryWithObjectsAndKeys:
                          @"key1", @"id",
                          @"Joe", @"name",
                          nil];

NSMutableArray *array = [NSMutableArray arrayWithObjects:student1, nil];

Не стесняйтесь добавлять больше полей в записи учеников и больше учеников в массив.Поле id словаря, возможно, также не должно быть строкой, но для начала это подойдет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...