我在UITableViewCell上有一个UITextField,在另一个单元格上有一个按钮.
我点击UITextField(键盘出现).
UITextField具有以下方法:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
NSLog(@"yes, it's being called");
owner.activeTextField = textField;
return YES;
};
owner.activeTextField是(保留,非原子)属性.
问题
当键盘可见时,我将单元格滚出视图.
然后,我单击位于不同单元格上的按钮.按钮调用:
[owner.activeTextField resignFirstResponder]
这会导致EXC_BAD_ACCESS.
任何的想法?细胞绝对是在记忆中.我的猜测是,一旦它消失,它将从视图中删除,其中一个属性(父视图?)变为零,这会导致所述错误.
我对吗?
TL; DR;从视图中删除UITextField时,如何删除键盘(重新签名第一响应者)?
最佳答案 有时候问题可能是另一个层次……检查并确保响应器链中的下一个对象(随后接收到的变为第一个响应消息的对象)不是垃圾.只是一个想法.