如何使用commitEditingStyle? (的UITableViewCell-的UITableView)

时间:2012-08-08 04:23:47

标签: ios4 uitableview

我正在研究在UITableViewCell的{​​{1}}元素上实施删除 - 编辑 - 复制功能的各种可行方法。

我现在尝试的是基于以下方法的使用:

UITableView

我可以看到使用这种方法的一些优点,但有一个问题:

当我尝试时,我可以使红色的“删除”按钮出现并正常工作,但就是这样。

我是否有机制可以使用“编辑”和“复制”按钮? 或者这是不可能的?

感谢您提供任何有用的信息。

2 个答案:

答案 0 :(得分:3)

修改

我只是明白你指的是单元格,而不是TableView。对于单元格,提供以下样式:

  • UITableViewCellEditingStyleDelete : 单元格具有删除编辑控件;此控件是一个包含减号的红色圆圈。
  • UITableViewCellEditingStyleInsert : 单元格具有插入编辑控件;此控件是一个包含加号的绿色圆圈。您可以将它用于“复制”。
  • UITableViewCellEditingStyleNone :单元格没有编辑控件。

您必须自己实施更多样式。

原始答案

您可以使用editButtonItem的{​​{1}}方法。它返回一个条形按钮项,在“编辑”和“完成”(但不是“复制”)之间切换其标题和关联状态。默认按钮操作已调用UIViewController方法。

如果你想要另一个州,你必须创建自己的BarButtonItem。

答案 1 :(得分:1)

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { 
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        [DummyData removeObjectAtIndex:indexPath.row];
        [_tableView reloadData];
    }       
}

使用此代码。希望它有所帮助,请用 UITableViewCellEditingStyleInsert

进行相同操作