我一直在寻找类似的问题,但到目前为止,答案并不符合我的目的。我在A UINavigationController中有一个UITableViewController,里面有包含文本字段的自定义UITableViewCells。当我点击文本字段时,它们成为第一个响应者,当我点击返回时,它们会重新签名。到目前为止一切都很好。
我的问题是其中一个单元格执行提交功能。完成此操作后,每当我按下文本字段时,返回按钮不再解除键盘。
我的问题是,既然我没有发布任何内容,为什么这些文本字段会停止收听resignfirstresponder消息?
UPDATE:我终于通过在课堂上设置UITextfield ivar来使其工作,使其成为文本字段开始编辑时的第一个响应者:
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
[textField setTextColor:[UIColor blueColor]];
focusedTextField = textField;
}
按下提交按钮时调用[focusedTextField endEditing:YES];
。刚刚在SO中看到一些答案后添加了这个,但是我记不清了链接,抱歉。
希望它有所帮助。
答案 0 :(得分:1)
如果您已声明一个返回方法(假设您的textfiled称为textField
),请在您的方法中使用此代码;
[textField setUserInteractionEnabled:NO];//but this may restric you if you need to use it again
但是如果你使用键盘的标准返回属性,它可能与Apple的限制相关