0
 - (void)viewWillAppear:(BOOL)animated
 {


goals = [[NSArray alloc] init];
goals = [[self.operation valueForKeyPath:@"goal.goalNaam"] allObjects]  ;


[self.tableView reloadData];

正如您在上面的代码中所见,我正在 viewwillappear 中为我的 tableview 加载我的元素。当用户向表中添加某些内容时(添加发生在不同的视图中),它被添加到 Core Data 并在 tableview 再次出现时加载数组(在被解雇的“add-an-element-view”之后),现在我想从表中删除一些东西。但问题是我们现在停留在同一个视图(tableview)中,所以我的数组没有重新加载(因为 viewwillappear 没有执行)。有人知道如何解决这个问题吗?

4

3 回答 3

0

你可以调用“[self viewWillAppear:YES];” 从核心数据中删除数据后,数据从同一个视图(Tableview)重新加载

于 2012-08-17T18:30:10.993 回答
0

您将数据加载到cellForRowAtIndexPath. 这称为单元格进入视图,并且仅加载视图中(或几乎在视图中)的单元格。

要强制重新加载某些内容,请使用reloadRowsAtIndexPaths其他reload...方法之一。

于 2012-08-17T18:37:23.737 回答
0

查看NSFetchedResultsControllerDelegate。您可以将您的 VC 设置为获取结果委托,并在数据结构更改时收到通知。

于 2012-08-17T19:19:10.877 回答