我有一个分组的表格视图。每个部分有三行。我需要能够一次删除一个部分。使用标准编辑模式,我可以让它工作。但是,删除图标显示在每个单元格的左侧,而不仅仅是每个部分的第一行。
有没有办法抑制除第一行之外的所有行的小微调器图标?
我希望有一种简单的方法可以在没有子类化的情况下做到这一点。
这是一个有助于可视化的屏幕截图:http: //picasaweb.google.com/lh/photo/ll-EJY5ACw7oqHH1xKBQ8w ?feat=directlink
我有一个分组的表格视图。每个部分有三行。我需要能够一次删除一个部分。使用标准编辑模式,我可以让它工作。但是,删除图标显示在每个单元格的左侧,而不仅仅是每个部分的第一行。
有没有办法抑制除第一行之外的所有行的小微调器图标?
我希望有一种简单的方法可以在没有子类化的情况下做到这一点。
这是一个有助于可视化的屏幕截图:http: //picasaweb.google.com/lh/photo/ll-EJY5ACw7oqHH1xKBQ8w ?feat=directlink
尝试这个:
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.row == 0) {
return UITableViewCellEditingStyleDelete;
} else {
return UITableViewCellEditingStyleNone;
}
}
与其删除行,不如创建一个UIView
包含 aUILabel
和 customUIButton
作为子视图的父级。将此父视图设置为节标题视图。
该按钮应连接以触发删除行的方法,例如,翻转BOOL
该部分的状态标志,然后重新加载表:
- (void) deleteMySection:(id)sender {
self.showMySection = NO;
[tableView reloadData];
}
您的-numberOfSectionsInTableView:
委托方法将根据此布尔标志的状态相应地调整其输出,例如
- (NSInteger) numberOfSectionsInTableView:(UITableView *)tv {
return ((showMySection) ? numberOfSections : numberOfSections - 1);
}