我可以让我的应用程序进入UITextField控件停止响应按键的状态。
我仍然有一个闪烁的插入符号。键盘出现了。正确调用了UITextField委托方法。
唯一的问题是关键新闻事件不起作用。这似乎发生在我调用以下UIViewController方法之后:
- (void)transitionFromViewController:(UIViewController *)fromViewController
toViewController:(UIViewController *)toViewController
duration:(NSTimeInterval)duration
options:(UIViewAnimationOptions)options
animations:(void (^)(void))animations
completion:(void (^)(BOOL finished))completion;
任何可能导致这种情况的想法?如何预防或修复它?
感谢。
答案 0 :(得分:0)
完成转换后,请尝试
[yourTextField becomeFirstResponder]
答案 1 :(得分:0)
代码已经在需要的地方调用了becomeFirstResponder,这就是为什么键盘出现并且插入符号闪烁的原因。
但是,您的应用还需要接受按键操作。您的应用程序窗口必须是关键窗口。
原来这是因为在网络操作期间使用了一个窗口,该窗口在其上有一个等待指示器。
那个窗口正在成为关键窗口。
当等待指示器窗口被解除时,主应用程序窗口未被指定为关键窗口。
因此,在我的应用程序委托中,我添加了以下行:
[waitIndicatorWindow resignKeyWindow];
[waitIndicatorWindow removeFromSuperview];
waitIndicatorWindow = nil;
[self.window makeKeyWindow]; <- added this line to fix the problem.