2 garaster garaster 于 2013.04.09 10:58 提问

检测对象是不是UIKeyboard

不知道有什么方法检测一个对象是不是UIKeyboard类型?由于在其他inputView中用到UIKeyboardDidShow,所以在这不能用UIKeyboardDidShow。

而且我也试过用[view isKindOfClass:[UIKeyboard class]],但是没成功,因为不能导入它的.h文件。

不知道有没有其他好方法?谢谢

2个回答

ce_la_vie
ce_la_vie   2013.04.09 15:09
已采纳

使用映射:

[view isKindOfClass:NSClassFromString(@"UIKeyboard")]
LPPloveROU
LPPloveROU   2013.04.09 11:15

要是我理解正确的话,可以检测inputView是否是第一个响应,或者检测inputView属性设置,是否为nil。如果是nil,就是keyboard

UITextField *field = [[UITextField alloc] initWithFrame:CGRectZero];
if( [field isFirstResponder] ) {
    //Currently being used to input something
}
if( [field inputView] != nil ) {
    //User is not using a default keyboard
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!