当前位置:  开发笔记 > 编程语言 > 正文

UITableView,拦截编辑模式

如何解决《UITableView,拦截编辑模式》经验,为你挑选了2个好方法。

我很好奇是否有可能拦截UITableView上"编辑"模式的默认方法.通常,如果您侧面滑动具有与之关联的委托方法的UITableViewCell,则会获得一个免费的"删除"按钮.我想将删除更改为其他任意选择器.我不想删除单元格,而是想运行一个hello world alert对话框.这种程度有可能吗?



1> 小智..:

编辑作为UITableView的委托对象上的方法实现.在你的表控制器中,有任何控件激活编辑调用:

[tableView setEditing: YES animated: YES];

然后,确保您的委托对象实现了这个:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
            UIAlertView *alert = [[UIAlertView alloc] 
                initWithTitle: @"Delete" 
                message: @"Do you really want to delete “George W. Bush”?" 
                delegate: self
                cancelButtonTitle: @"Cancel"
                otherButtonTitles: @"Of course!", nil];
    }
}

......或者更标准的行动可能是:

[itemList removeObjectAtIndex:indexPath.row];
[table deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES];



2> James..:

@JFMartin和Marco - 要替换​​标准的"删除"按钮,请使用以下UITableview委托方法

- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有