每5秒钟保存一次

时间:2014-01-13 17:04:18

标签: ios core-data save nstimer

我有一个tableview,我可以输入数据并通过核心数据保存它。我想知道我该怎么做,每5秒我的数据将“自动保存”而不是点击保存按钮。

- (void)viewDidLoad {
    [super viewDidLoad];

    self.saveButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave 
                                                                    target:self 
                                                                    action:@selector(save)];
}

- (void)save {

    [self setEditing:NO animated:YES];

    for (EditTableCell *cell in [self.tableView visibleCells]) {
        if ([cell isEditable])
            [self.managedObject setValue:[cell value] forKey:[cell key]];
    }

    [self saveManagedObjectContext];
    [self.tableView reloadData];
}

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

正如@staticVoidMan在评论中提到的那样,使用NSTimer进行保存。但是,这个频率非常快。我至少会打电话给-[NSManagedObjectContext hasChanges],这样你就不会浪费更多的周期。