接收iPhone键盘事件
有没有办法捕获我的应用程序中的所有键盘事件? 我需要知道用户是否在我的应用程序中使用键盘输入任何内容(应用程序有多个视图)。 我能够通过子类化 UIWindow 来捕获 touchEvents,但无法捕获键盘事件。
Is there anyway to trap all keyboard events across my application? I need to know if user is entering anything using keyboard across my application (Application has multiple views). I was able to capture touchEvents by subclassing UIWindow but unable to capture keyboard events.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用 NSNotificationCenter
Use NSNotificationCenter
我在我的博客中写了关于使用 UIEvent 的一些技巧来捕获事件的文章,
请参阅:
在 iOS 中捕获键盘事件了解详细信息。
来自上述博客:
I wrote about catching events using a little hack of UIEvent in my Blog
Please refer to :
Catching Keyboard Events in iOS for details.
From the above mentioned blog:
这不是一个简单的答案,但我认为你有两种方法可用。
像对 UIWindow 所做的那样,对输入组件(UITextView、UITextField 等)进行子类化。
创建一个应用程序范围的 UITextViewDelegate(和 UITextFieldDelegate)并将所有输入字段委托分配给它。
Not a simple answer, but I think you have two approaches available.
subclass the input components (UITextView, UITextField, etc) as you've done with the UIWindow.
Create a application wide UITextViewDelegate (and UITextFieldDelegate) and assign all your input field delegates to it.