私は自分のアプリでコアデータを使用していますが、それが少し遅いことに気付き、不整合の問題のクラッシュがいくつかあります。おそらく管理が悪いのですが、パスしたいのですがSQLite
、ライブラリを見つけましたFMDB
が、私の質問はデータベースでバックグラウンドの変更を行ったときにテーブルビューを自動的に更新するにはどうすればよいですか? コアデータを使用してNSFetchedController
、特にNSFetchedResultsControllerDelegate
テーブルビューを自動更新する方法があります.SQLiteを使用してこれを実行するにはどうすればよいですか?
1 に答える
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];
于 2013-04-12T11:52:28.990 に答える