其他部分工作正常。但是如果itemFlag为true,那么在进行字母排序后,我无法正确显示新信息。退出程序并重新启动会显示新项目已成功添加到阵列中,并且所有内容都已正确显示。
所以我的问题是,如果itemFlag为true,为什么reloadData不起作用?
以下是代码:
- (void)changeFoodDetails:(NSString *)foodName withPoints:(NSString *)foodPoints{
if (newItemFlag) {
[_foodStuffsArray insertObject:[[FoodItem alloc] initWithName:foodName points:[foodPoints intValue]] atIndex:0];
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
[sharedManager sortFoodStuffArrayByName];
[self.tableView reloadData];
newItemFlag = false;
}else {
[_foodStuffsArray removeObjectAtIndex:currentFoodstuffArrayEntry];
[_foodStuffsArray insertObject:[[FoodItem alloc] initWithName:foodName points:[foodPoints intValue]] atIndex:currentFoodstuffArrayEntry];
[self.tableView reloadData];
}
}