UITextField成为FirstResponder只工作一次

在我的应用程序中,用户可以输入他们的名字。

将UITextField添加到视图中并调用becomeFirstResponder。 在textFieldShouldReturn方法中,调用resignFirstResponder。 然后在textFieldShouldEndEditing中,从视图中删除UITextField。

这一切都很好,但问题是当用户第二次尝试输入他们的名字时,UITextField显示但键盘没有。

我已经尝试了很多东西,比如四处走动变成/辞职第一响应者或保留/不保留文本字段,但我似乎无法让它发挥作用。 有任何想法吗? 谢谢

如果您为该UITextField设置了属性,请确保在从视图中删除它后将其设置为nil。

尝试在textFieldDidEndEditing中完成工作,当你第二次点击文本字段时,控制应该进入textFieldShouldBeginEditing,尝试用断点检查它,它不会去,那么问题是你的文本字段没有分配任何内存,如果它进入此function设置此文本字段作为第一响应者。