我有一个错误,我花了太多时间在自己身上。基本上,我正在根据 Apple 文档创建一个“手风琴”表视图: https ://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Listings/ReadMe_txt.html#//apple_ref/doc/uid/ DTS40010139-ReadMe_txt-DontLinkElementID_3 代码的工作方式是,如果您点击表视图标题,则会调用代码以向该部分添加行。
唯一不同的是它适用于 iOS 5,因此对于我的标题视图,我没有使用可重用的标题视图内容。
基本上,每次我单击标题以显示我的行时,通过 [tableView beginUpdates]/[tableView endUpdates] 添加/删除的单元格都会变黑。但是,如果我之后滚动表格视图,它就会恢复正常。
图片展示了这一点:http: //imgur.com/a/B3lMu
我如何删除单元格的一些代码:
// GET THE SECTION INFO SWDeviceSectionInfo *deviceSectionInfo = [self.deviceTableSectionInfo objectAtIndex:section];
// "CLOSE" THE SECTION
deviceSectionInfo.open = NO;
// CREATE INDEX PATHS FOR ROWS THAT NEED TO BE DELETED
NSMutableArray *indexPathsToDelete = [[NSMutableArray alloc] init];
for (int i=0;i<deviceSectionInfo.rowInfo.count;i++) {
// CREATE INDEX PATHS FOR EACH ROW
[indexPathsToDelete addObject:[NSIndexPath indexPathForRow:i inSection:section]];
}
// APPLY THE ROW INSERTIONS
[self.deviceTableView beginUpdates];
[self.deviceTableView deleteRowsAtIndexPaths:indexPathsToDelete withRowAnimation:UITableViewRowAnimationBottom];
[self.deviceTableView endUpdates];
一些额外的说明:
- 滚动表格视图后单元格的背景是表格视图的背景(我无法为单元格设置背景)。黄色视图是单元格背景顶部的视图,应该是绿色的。
- 如果我再次单击 iOS 模拟器调试“颜色”,黑色单元格就会消失。
- 我尝试将“突出显示”、“选定”颜色更改为随机颜色,但没有任何变化。仍然是一个黑细胞虫。
- 我已经对代码进行了三次检查,例如将单元格添加到错误的部分,所有这些似乎都是正确的。
- 当我使用默认的白色单元格(没有自定义笔尖)时,也会出现这个错误。