我有一个带有UITableView的viewController,我可以通过滑动来编辑(删除)其中的行,就像在邮件应用程序中一样.除此之外,我还采用了以下方法:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {

    return YES;
}

然而,如果我显示了一个删除按钮,同时我使用我的UINavigationController的反向导航,即当我popViewControllerAnimated:时,应用程序崩溃,并显示以下消息:

[ViewController tableView:canEditRowAtIndexPath:]: message sent to deallocated instance 0xaae64d0

如何解决这个问题?

推荐答案

在视图控制器的dealloc方法中,将表视图的editing属性设置为NO.

Objective-c相关问答推荐

错误无法使 UICollectionElementKindCell 类型的视图出列

如何用零填充左侧的整数?

具有自定义视图的相机

如何获取目标名称?

如何在运行时向对象添加属性?

iOS - 应用程序关闭时的核心位置和地理围栏

在基于视图的 NSTableView 上更改 Select colored颜色

切换隐私设置将杀死应用程序

如何将 NSDictionary 转换为 NSMutableDictionary?

字符串的静态 NSArray - 如何/在哪里初始化视图控制器

获取字符串的最后 2 个字符?

MKAnnotation 图像偏移与自定义引脚图像

带有 NSBlockOperation 和队列的 NSURLSession

UICollectionView 更新单个单元格

在 DEBUG 模式下启用和禁用 NSLog

zoom UIView 及其所有子项

最大 CGFloat 值是否有常数?

NSNumber 和 NSInteger 有什么区别?

iPhone - dequeueReusableCellWithIdentifier 用法

iOS中的活动生命周期相当于什么?