我正在研究自定义表格单元格,它有一些文本字段。在一些按钮按下方法我动态添加/删除行。但是当屏幕上显示键盘并按下按钮时,应用程序崩溃。
答案 0 :(得分:3)
我使用非常简单的两行方法来解决问题
首先写一个Bool isKeyBoardHide。
然后在ViewDidLoad中编写此代码
// Listen for keyboard appearances and disappearances
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardDidShow:)
name:UIKeyboardDidShowNotification
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardDidHide:)
name:UIKeyboardDidHideNotification
object:nil];
编写这两种方法来更新bool关于当前状态
- (void)keyboardDidShow: (NSNotification *) notif{
isKeyBoardHide = NO;
}
- (void)keyboardDidHide: (NSNotification *) notif{
isKeyBoardHide = YES;
}
如果您想检查只执行该代码
if(!isKeyBoardHide) {
// Dismiss Keyboard
[self.view endEditing:YES]
} else {
//keyboard is already hidden
}
解决此次崩溃非常简单易行。