リモート Web サービスからデータを取得し、UITableView にデータを入力するアプリに取り組んでいます。新しいデータを取得したら、ほとんどの Twitter クライアントと同じように、現在表示されているセルをそのままにして、その上に新しいデータを追加したいと考えています。私のロード方法は現在次のようになっています:
- (void)loadPostsInBackground
{
NSURL *url = [NSURL URLWithString:@"[URL]"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
AFJSONRequestOperation *operation;
operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id jsonObject) {
[self createPostsFromDict:jsonObject];
[self.refreshControl endRefreshing];
[self.tableView reloadData];
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id jsonObject) {
NSLog(@"Received an HTTP %d", response.statusCode);
NSLog(@"The error was: %@", error);
}];
[operation start];
}
これは機能しますが、現在表示されているセルを新しいデータで更新します。だから私が欲しいのは、新しいデータを取得し、それを現在表示されているセルの上に追加する (または現在表示されているセルにとどまる) ことです。これを行う最善の方法は何ですか?
注: iOS6 が必要です。