Вы загружаете массив обратно из NSUserDefaults и используете содержимое массива для возврата соответствующих значений из различных методов источника данных табличного представления , в частности tableView:numberOfRowsInSection:
и tableView:cellForRowAtIndexPath:
.
Быстрый пример:
Сначала прочитайте массив обратно из NSUserDefaults в какой-то момент, возможно, в init вашего класса или в application:didFinishLaunchingWithOptions:
(после вызова NSUserDefaults registerDefaults:
, конечно):
_array = [[NSMutableArray arrayWithArray:[[NSUserDefaults standardUserDefaults] arrayForKey:@"key"]] retain];
Затем используйте его для упомянутых методов:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return _array.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
if (!cell) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"] autorelease];
}
cell.textLabel.text = [_array objectAtIndex:indexPath.row];
return cell;
}
Это должно начать вас. Возможно, вы также захотите вызвать reloadData
или insertRowsAtIndexPaths:withRowAnimation:
в табличном представлении при добавлении чего-либо в массив, подробности смотрите в документации .