我的视图上有几个 UITextFields(每个都在 UITableViewCell 内)。当键盘从任何文本字段中触发时,我需要制作一些动画,主要是为了改变 UITableView 的框架。当键盘隐藏时也必须发生同样的情况。
我已经完成了动画,所以这不是这里的问题。
现在,我使用 NSNotificationCenter 来捕捉键盘的显示/隐藏:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide) name:UIKeyboardWillHideNotification object:nil];
问题是当键盘可见(使用文本字段)并且我在另一个文本字段中按下时。通常对于这个东西键盘不会隐藏,但会保持可见。
它在 iOS 4 中运行良好,但问题出现在 3.1.3 中(这是我可以测试的版本 - 可能是 3.2 以下的任何版本)。在早于 3.2 的版本中,将焦点从文本字段直接更改为另一个文本字段将触发 UIKeyboardWillHideNotification 和 UIKeyboardWillShowNotification。
任何人都知道在没有 NSNotificationCenter 的情况下键盘真正显示/隐藏时执行某些动画的方法吗?
或者我如何使用低于 3.2 的版本来克服这个问题?
谢谢。