以下代码用于在iOS6中工作,以便在从导航堆栈弹出视图控制器时隐藏键盘:
- (void)viewWillDisappear:(BOOL)animated { [self.view endEditing:YES]; [super viewWillDisappear:animated]; }
但是,在iOS7中,[self.view endEditing:YES]行似乎被忽略了.我在其他视图事件(viewDidDisappear,viewWillAppear和viewDidAppear)中尝试了该命令,并且它唯一使用的是viewDidAppear.似乎一旦启动"弹出",我们将失去隐藏键盘的能力,直到视图控制器被"推回"到堆栈上.
虽然将代码放在viewDidAppear中确实可以隐藏键盘,但不好的是当viewController被推回到导航堆栈时键盘会短暂显示......从UI的角度来看,这是非常不可接受的.
有没有其他人成功解决这个问题?我不想编写自己的CANCEL按钮,但是现在,这是我能想到的唯一可行的方法.