我正在使用 MasterDetail 模板创建一个 SQL 数据库,然后添加和更新记录。我在 Detail 视图中添加新记录,然后返回到 Master 上查看它们。因为我在 Detail 视图上添加新记录,所以当我返回 Master 时需要重新加载数组。我已经宣布例如_objects = [[NSMutableArray alloc] init];
第一次添加没问题,我回到主人那里有记录。我已经阅读了 sql 表并将其加载到_objects
. 但是,如果我继续回到细节然后回到大师,我现在有相同的记录重复。所以,发生的事情是数组仍然有第一次的记录,当我读取 SQL 时,我第二次添加了相同的记录。
因此,我尝试使用[_objects removeAllObjects];
认为这将_objects
恢复为空并准备从 sql 表重新加载的原始状态。但是,这导致以下语句失败:
[self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
这让我觉得我上面的假设是不正确的。然后我尝试重置_object.count=0;
导致其自身语法错误的原因,因为setobject
它不可用。我也试 [self.tableView reloadData];
了也没用。应该reloadData
以某种方式参考_objects
?