iphone - 接收iPhone键盘事件

标签 iphone iphone-softkeyboard

是否有办法捕获我的应用程序中的所有键盘事件?我需要知道用户是否在我的应用程序中使用键盘输入任何内容(应用程序有多个 View )。我能够通过子类化 UIWindow 来捕获 touchEvents,但无法捕获键盘事件。

最佳答案

使用 NSNotificationCenter

[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(keyPressed:) name: UITextFieldTextDidChangeNotification object: nil];

[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(keyPressed:) name: UITextViewTextDidChangeNotification object: nil];

........

-(void) keyPressed: (NSNotification*) notification
{
  NSLog([[notification object]text]);
}

关于iphone - 接收iPhone键盘事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1267560/

相关文章:

iPhone 和加密库

IPHONE:列出我的应用程序创建的所有 View 和 subview

iphone - iPhone上触摸空白区域时如何隐藏键盘

ios - 在 shouldChangeTextInRange 方法中返回 false 自动将所有字母大写

ios - 如何按 2 列/键对对象的 NSArray 进行排序

iphone - 底部按钮未显示在 iOS 模拟器中

iphone - 使用自定义 NSObject 类来简化 iPhone 应用程序中的重复代码时遇到问题

iphone - 在编辑时禁用 UITextField 上的键盘

iphone - 关闭 UIAlertView 中 UITextField 的键盘

ios - TextField 不会被键盘平滑地向上推,就像在 Whatsapp 和 Hangouts 中一样