向左滑动以进行删除和编辑,删除

时间:2011-04-12 08:08:46

标签: iphone objective-c xcode uitableview

我无法找到解决方法。是否可以使用左滑动以及使用编辑和删除来删除选项。

我在导航栏左侧有编辑按钮。

self.navigationItem.leftBarButtonItem = self.editButtonItem;

和commitEditingStyle方法如下

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

    if (editingStyle == UITableViewCellEditingStyleDelete) {
//delete code here
    }   
    else if (editingStyle == UITableViewCellEditingStyleInsert) {
    // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view.
    }   

}

使用此功能后,根本没有检测到左滑动。删除的唯一方法似乎是进入编辑模式并从那里删除。 帮助将不胜感激。

我是新手,所以请跟我一起轻松:)

3 个答案:

答案 0 :(得分:3)

你的意思是在单元格上滑动你需要删除选项。

如果是这样,您可以尝试以下代码:

- (UITableViewCellEditingStyle)tableView:(UITableView *)aTableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {

    return UITableViewCellEditingStyleDelete;

}

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

    //perform delete operation

}

答案 1 :(得分:1)

确保您已在下面实施所有代表

tableView:commitEditingStyle:forRowAtIndexPath:
tableView:canEditRowAtIndexPath:
tableView:editingStyleForRowAtIndexPath

答案 2 :(得分:0)

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

    if (editingStyle == UITableViewCellEditingStyleDelete) {
//delete code here
    }   
    else if (editingStyle == UITableViewCellEditingStyleInsert) {
    // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view.
    }  

一旦您在代理中编写上述方法,您就可以使用滑动手势....在此方法中,您将处理您想要执行的后续操作。

感谢.....