ios - 用于删除 tableView 中的行的 UIAlert

标签 ios objective-c cocoa-touch uitableview uialertview

我有这个代码:

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

[array removeObjectAtIndex:indexPath.row];

if (editingStyle == UITableViewCellEditingStyleDelete)
{
    [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
}
}

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if(buttonIndex == 0)//OK button pressed
{

}
else if(buttonIndex == 1)//Annul button pressed.
{

}
}

我想在取消一行tableView之前显示警报 View ,然后在第一个if中放入commitEditingStyle:(UITableViewCellEditingStyle)editingStyle指令> UIAlert 方法委托(delegate)...
这可能吗?

最佳答案

将单元格的indexPath保存到ivar并在警报 View 调用的方法中使用该信息。

@interface MyClass : … {
    NSIndexPath *deleteIndexPath;
}
@end

在您的实现中:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (editingStyle == UITableViewCellEditingStyleDelete)
    {
        deleteIndexPath = indexPath;
        //code for UIAlrtView
        // …
    }
}

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    if(buttonIndex == 0)//OK button pressed
    {
        [array removeObjectAtIndex:deleteIndexPath.row];
        [self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:deleteIndexPath] withRowAnimation:UITableViewRowAnimationFade];
    }
}

关于ios - 用于删除 tableView 中的行的 UIAlert,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6203433/

相关文章:

objective-c - 什么时候使用类扩展在 .m 文件中创建初始化方法?

ios - 是否可以区分锁定设备和将应用程序发送到后台?

ios - 数据格式不正确(数据交换),因此无法读取

ios - 我在 objective-c 中的 cocoa mac 应用程序的 SQLite 教程概述

ios - 横向播放视频后状态栏下的导航栏

objective-c - iOS 将 tapGesture 添加到多个 View

iphone - UITableView 不滚动到单元格

ios - 双击 UIwebview 到全屏

ios - 用苹果登录抛出授权失败: Error Domain=AKAuthenticationError Code=-7026

android - 验证点击某些东西是否会让你退出 appium 中的应用程序