使用FMDB for SQLite库如何自动更新tableview,就像Core Data的controllerDidChangeContent一样

时间:2013-04-12 11:13:36

标签: ios sqlite core-data fmdb

我在我的应用程序中使用核心数据,但我注意到有点慢,我有一些不一致的问题崩溃,也许我很难管理它,但我想传递给SQLite和我找到了FMDB库,但我的问题是当我在数据库中进行后台更改时,我如何自动更新tableview?使用核心数据有NSFetchedController,特别是有NSFetchedResultsControllerDelegate自动刷新表视图,我如何使用SQLite执行此操作?

1 个答案:

答案 0 :(得分:3)

您可以使用NSNotificationCenter,这是代码示例..

在TableViewController.m文件中添加此代码

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    if (self) {
        // Custom initialization
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reloadTableView:) name:@"ReloadTableView" object:nil];
    }
    return self;
}

- (void)reloadTableView:(NSNotification*)notification
{
    [tableView relodData];
}

如果您调用后台线程,请将此代码完成。

[[NSNotificationCenter defaultCenter] postNotificationName:@"ReloadTableView" object:nil];