在 tableviewheader 中使用 UITextField 在 self.view.endEditing 上崩溃

Crash on self.view.endEditing with UITextField in tableviewheader

我在调用 self.view.endEditing(true) 时遇到了一次非常罕见的崩溃。大约 0.3% 的用户受到影响。我无法在自己的设备上重现崩溃。不管怎样,我想修复它。

我有一个 UITableView,它在 tableviewheader 中包含一个 UITextfield,我在 viewDidLoad() 中设置了它。我对 UITextfield 有很强的参考。我还在 deinit.

中将委托设置为 nil

当用户点击一行时,我调用 self.view.endEditing() 并且应用程序崩溃 EXC_BREAKPOINT。 该应用程序在崩溃时处于焦点状态。崩溃主要发生在 iPhone 5、5c、5s 和 6(约 80%)

我也尝试过 resignFirstResponder 同样的问题,在调用 resignFirstResponder 之前验证文本字段是否不为 nil 也没有帮助。

感谢@Vinodh,我检查了 Storyboard 中的 ViewController。仍然有与 SearchViewController 的连接,但我已经不再使用了。删除连接让我摆脱了这次崩溃。