如何检测国际键盘的隐藏事件? iOS版

时间:2013-06-19 13:27:01

标签: ios

如何检测国际键盘的隐藏事件? UIKeyboardDidHideNotification似乎没有触发。

以下相关链接无效。

detect the appear and disappear of international keyboard

更多信息

这是我为UIKeyboardDidHideNotificationUIKeyboardDidShowNotification

设置通知的方法
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidShow:) name:UIKeyboardDidShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidHide:) name:UIKeyboardDidHideNotification object:nil];

-(void)keyboardDidShow:(NSNotification*)notification {
    NSLog(@"keyboardDidShow");
}
-(void)keyboardDidHide:(NSNotification*)notification {
    NSLog(@"keyboardDidHide");
}

keyboardDidShow被触发两次。首先是当标准键盘弹出时。其次是当国际键盘弹出时。

当我隐藏国际键盘时,不会触发

keyboardDidHide。但是当隐藏标准键盘时会触发它。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

如果用户更改键盘,则不会收到任何通知。仅当键盘出现或消失时。

我所知道的唯一解决方案是观察或做出改变(尝试KVO?)

[UITextInputMode currentInputMode].primaryLanguage

另请参阅:Detecting current iPhone input language