EXC_BAD_ACCESS重新加载包含textfield的单元格

时间:2014-11-11 15:16:06

标签: ios uitextfield uicollectionview exc-bad-access uicollectionreusableview

我的应用中存在问题但无法找到解决方案。

我有自定义单元格的 UICollectionView 。我的单元格里面有一个UITextField。

当textfield在editMode中时(键盘处于活动状态),如果我重新加载collectionView,我有一个 EXC_BAD_ACCESS 错误。发生此错误的原因是调用 UITextField 的方法 resignFirstResponder 。 问题是,在集合视图中,单元格可能不再存在,因为它已被解除分配。

这是我错误的堆栈:

enter image description here

知道如何避免这个问题吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

将模型中的引用添加到文本字段,弱引用。

当模型将被取消分配时,请重新签名文本字段的响应者。

代码:

-(void)dealloc{
    if (self.refrenceTextField) {
        [self.refrenceTextField resignFirstResponder];
        self.refrenceTextField = nil;
    }
}