我有一個帶有獎品列表的NSMutableArray。從Array和UITableView中刪除對象
用這些,我填充了一個UITableView。
現在,我正嘗試使用TableView CommitEditingStyle刪除其中的一個獎品。並給我「無效的更新:無效的部分....」錯誤。
我在互聯網上發佈了很多關於「無效更新:無效數量的部分....」的帖子,但是我無法使其工作。
首先我從數組中刪除對象,然後更新TableView(就像所有的帖子教我)。但仍然給我的錯誤
我嘗試設置數組爲nill,是相同的。
是否需要刷新數組或類似的東西?
這是我的代碼:
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
[[self myPrizesList] removeObjectAtIndex: [indexPath row]];
[self.tableView beginUpdates];
// Either delete some rows within a section (leaving at least one) or the entire section.
if ([[self myPrizesList] count] > 0)
{
// Section is not yet empty, so delete only the current row.
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
withRowAnimation:UITableViewRowAnimationFade];
}
else
{
// Section is now completely empty, so delete the entire section.
[self.tableView deleteSections:[NSIndexSet indexSetWithIndex:indexPath.section]
withRowAnimation:UITableViewRowAnimationFade];
}
[self.tableView endUpdates];
}
}
我總是說,對於5元件陣列,「包含在更新後的表視圖部分的數目(5)必須等於更新前的表格視圖中包含的觀察值數目(5),加或減插入或刪除的區段數(0插入,1刪除)「
如果我將數組設置爲零,請說: 「更新(1)後表格視圖中包含的部分數量必須爲b È等於包含在表視圖esctions的更新(1)前的數,加或減插入部的數量或刪除(0插入,1刪除)」
感謝和對不起,我的英文不好
請發佈更多的代碼,如果你可以在整個班級 –
請包括你的numberOfSections和numberOfRowsInSection方法,這是它們之間的斷開和你在上面引起你的問題的方法中所做的操作。 – jrturton
@owengerig - 不是全班同學,不! – jrturton