我知道使用setEditing:
启用UITableView的编辑模式。
但我更喜欢禁用某些行的操作(启用其他行)。
有可能吗?
谢谢,
InterDev中
答案 0 :(得分:30)
在您的数据源中实施the -tableView:canEditRowAtIndexPath:
method。返回NO
这些行。
答案 1 :(得分:10)
这篇文章总结得很好, Is there any way to hide "-" (Delete) button while editing UITableView
如果您不想阅读帖子,则gist位于您不想删除的行但希望允许移动行:将行的编辑样式设置为UITableViewCellEditingStyleNone
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{
return UITableViewCellEditingStyleNone;
}
答案 2 :(得分:9)
使用canEditRowAtIndexPath不允许行与分组样式中的其他单元格对齐。哪个看起来很糟糕。
我使用UITableViewCellEditingStyleNone
,对于你不想显示编辑控件的行(减号/加号按钮),把它放在你的
(UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{}
答案 3 :(得分:1)
根据您的问题,我了解您只想隐藏删除按钮,使其不显示在第1行。请将tableview编辑设置为yes并添加以下代码
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.row==0)
{
return NO;
}
return YES;
}