UITextField焦点在导航视图推送之前?

Arc*_*ite 5 cocoa-touch ios

当您要编辑字段时,我在中UITextField设置了UITableViewCell一个控件,该控件模仿了Apple自己的“联系人”应用程序中的控件。除了一点UI错误外,所有这些基本上都可以正常工作。

UITableView是的一部分UIViewController创建并从XIB加载,但是被编程创建的文本字段(和成为第一应答器)中tableView:cellForRowAtIndexPath:,以便它可以被添加到电池中。

这会导致轻微的键盘滞后,将视图控制器推到堆栈上,之后很快就会出现键盘。

但是,“联系人”应用程序将其全部推送为一个。

我该如何纠正这种滞后?我尝试将文本字段的创建和第一个响应者移至viewDidLoad,但这没有帮助。我什至尝试创建一个layoutSubviews并在将其推送到堆栈之前从视图控制器外部调用它。

不幸的是,直到文本字段成为单元格的一部分时,才看起来好像该文本字段实际上成为了第一个响应者-早于视图被推送之后。

Luk*_*ger 4

你必须让他UITextField成为第一个响应者viewWillAppear。我在这里创建了一个示例项目:

https://github.com/lukaswuerzburger/pushed-keyboard