我有一个包含UITexView
和Button的UIView。
我有一位代表UITextViewDelegate
。
当我第一次将光标放在UITextView上时,会调用委托函数"textViewShouldEndEditing"
,此函数会触发UIKeyboardWillShowNotification
通知。到目前为止一切都很好。
当我点击按钮时,我调用函数[self.textView resignFirstResponder];
,然后此函数调用委托"textViewShouldEndEditing"
,但通知UIKeyboardWillHideNotification
永远不会被调用。
我有一个听众通知
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(_keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
有什么遗漏???
答案 0 :(得分:2)
[self.view endEditing:YES];是诀窍,谢谢大家的帮助
答案 1 :(得分:0)
您应该通过以下方式向通知中心发布通知
[[NSNotificationCenter defaultCenter] postNotificationName:@ “TestNotification” 对象:自];
您可以通过以下方式检查通知是否已收到
if([[notification name] isEqualToString:@“TestNotification”]) NSLog(@“已成功收到测试通知!”);
答案 2 :(得分:0)
您的代码是这样的,请检查并告诉我
-(void)viewDidAppear:(BOOL)animated{
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
}
-(void) keyboardWillHide:(NSNotification *)note{
NSLog(@"test");
}