【问题标题】:IOS Keyboard input from computerIOS 电脑键盘输入
【发布时间】:2015-05-23 08:32:11
【问题描述】:
我有一个 IOS 应用程序,如果它可以响应我在计算机上进行的键盘敲击,它将非常方便用于测试目的。有没有办法这是可行的?
更多上下文:我有一个用图像制作的自定义键盘,当触摸它时会打印出按下的字母。但是,如果我尝试用我的电脑键盘输入字母,我的自定义键盘不会打印这些字母,只有当我使用设备或模拟器手动按下它们时。苹果内置键盘会自动为您执行此操作,但它不适合我想要构建的应用程序的需求。
所以我的问题是:
有没有办法从 IOS 设备上的计算机键盘获取输入,而无需来自默认的 Apple 键盘?
【问题讨论】:
标签:
ios
iphone
ipad
keyboard
【解决方案1】:
回答我自己的问题,是的,有一个解决方案。
我做了什么:
我实现了 UIKeyInput 协议及其附带的三个方法:
public func insertText(text: String) { } // <-- keyboard input comes in through here
public func deleteBackward() { }
public func hasText() -> Bool { return true; }
之后我对 canBecomeFirstResponder 方法进行了覆盖
public override func canBecomeFirstResponder() -> Bool {
return true;
}
我做的最后一件事是调用 becomeFirstResponder 方法
self.becomeFirstResponder()
现在,当您在计算机上按下键盘上的键时,这应该允许您从 insertText 方法接收键盘输入(甚至可能是 iPad,我没有对此进行测试,但我假设是这样) .