我的应用中存在问题但无法找到解决方案。
我有自定义单元格的 UICollectionView 。我的单元格里面有一个UITextField。
当textfield在editMode中时(键盘处于活动状态),如果我重新加载collectionView,我有一个 EXC_BAD_ACCESS 错误。发生此错误的原因是调用 UITextField 的方法 resignFirstResponder 。 问题是,在集合视图中,单元格可能不再存在,因为它已被解除分配。
这是我错误的堆栈:
知道如何避免这个问题吗?
提前致谢
答案 0 :(得分:0)
将模型中的引用添加到文本字段,弱引用。
当模型将被取消分配时,请重新签名文本字段的响应者。
代码:
-(void)dealloc{
if (self.refrenceTextField) {
[self.refrenceTextField resignFirstResponder];
self.refrenceTextField = nil;
}
}