iPad UIButtons 响应外部键盘输入
我正在编写一个基于类似计算器的用户界面的应用程序。在 iPad 上,我希望计算器 UI 上的数字 UIButtons 能够响应外部键盘上的数字。我在应用程序中的任何地方都没有文本输入,而且我永远不希望出现屏幕键盘。如何让我的 UIButtons 响应特定的按键,就像它们被触摸一样?
I'm writing an app based around a calculator-like UI. On an iPad, I'd like the number UIButtons on my calculator UI to respond to the numbers on the external keyboard. I have no text input anywhere in the app, and I'd never want an on-screen keyboard to appear. How do I get my UIButtons to respond to specific key presses as if they'd been touched?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想说用委托集创建一个隐藏的 UITextField ,使其成为 viewDidLoad 时的第一个响应者。据我所知,当连接蓝牙键盘时,键盘不会出现,然后只需检查在 shouldChangecharactersInRange 中键入的字符并相应地激活右侧按钮即可。
编辑:我刚刚制作的一个简单示例, https://github.com/benjaminq42/buttonTest ,如果您希望有某种类型的突出显示动画,您需要创建一个自定义 UIButton 类。您可以使用“setHighlighted”,但它会“粘住”。
I'd say create a hidden UITextField with the delegate set, make it become the first responder upon viewDidLoad. The keyboard won't appear when a bluetooth keyboard is connected as far as I know, then just check what characters are typed in the shouldChangecharactersInRange and activate the right buttons accordingly.
EDIT: a quick example I just made, https://github.com/benjaminq42/buttonTest , if you wish to have a highlight animation of some sorts you need to create a custom UIButton class. You can use 'setHighlighted' but that 'sticks'.