我在退出键盘时遇到问题。我在导航控制器中有tableViewController
,并且在选择其中一个单元格时,不同的视图控制器被推送到导航控制器。在视图控制器中,我已经将一个文本字段指定为第一个响应者,这样一旦按下viewcontroller并且在弹出viewcontroller时键盘被重新签名,键盘就会显示
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
[self.navigationController popViewControllerAnimated:YES];
}
- (void)viewWillDisappear:(BOOL)animated{
[self.textField resignFirstResponder];
}
这个工作正常。但是,当我按下相同的视图控制器时,当我弹出它时,键盘不会退出。它阻止了tableViewController的视图。
答案 0 :(得分:-3)
我遇到了与你相同的问题(UINavigationController,UIAlertView,UITextField或UITextView)。
我通过在后台执行pop并轻松解决了这个问题并删除了resignFirstResponder调用(文件中的viewWillDisappear方法),如下所示:
-(void)popCurrentView {
[self.navigationController popViewControllerAnimated:YES];
}
-(void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
if (alertView.cancelButtonIndex != buttonIndex) {
[self performSelectorInBackground:@selector(popCurrentView) withObject:nil];
}
}