1

我的应用程序出现问题,找不到解决方案。

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

当文本字段处于编辑模式(键盘处于活动状态)时,如果我重新加载 collectionView,我会遇到EXC_BAD_ACCESS错误。发生此错误是因为调用了UITextField的resignFirstResponder方法。问题是collectionView中可能不再存在该单元格,因为它已被释放。

这是我的错误堆栈:

在此处输入图像描述

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

提前致谢

4

1 回答 1

0

在模型中添加对文本字段的引用,弱引用。

当模型将被释放时,请辞去文本字段的响应者。

代码:

-(void)dealloc{
    if (self.refrenceTextField) {
        [self.refrenceTextField resignFirstResponder];
        self.refrenceTextField = nil;
    }
}
于 2014-11-12T12:54:53.440 回答