由于键盘不支持“数字和小数”类型,我正在使用自定义键盘和Apple审核团队拒绝该键盘。iOS自定义键盘类型
所以,我发现问题是,当文本字段需要这些特定类型的键盘(例如插入年龄,度量或其他数值)时,我的键盘'错过了回应'。
我明白,从Apple文档阅读,您必须响应每个文本对象的UIKeyboardTpye
属性。
我搜索了UIInputViewController
的具体代表,但我无法找到与之相近的东西。
在这个论坛中,我发现检查当前所需的键盘类型的一个好地方是textDidChange:
委托,但它不被调用。
我想这个响应者在你的键盘以某种方式向iOS声明它可以处理Numbers或Decimal类型时被调用。事实上,我创建了一个简单的应用程序有一个简单UITextView
需要十进制键盘类型:
textView.keyboardType = UIKeyboardTypeDecimalPad;
我在键盘扩展输入视图控制器textDidChange:
委托放NSLog()
。
正如我点击的文本查看我的委托不叫,而不是标准的十进制键盘和显示在Xcode控制台我看到以下消息:
找不到keyplane支持类型8用于键盘iPhone-Portrait-DecimalPad;使用405786210_Portrait_iPhone-简单Pad_Default
我也注意到,此消息正值当UITextView
要求不被允许的键盘类型,即phonepad。所有其他键盘类型不会发出该消息,并显示自定义键盘,并正确调用代理。
数字和小数类型肯定是允许的,并且是审核团队成员必须的。为什么表现为禁忌类型?
我认为我们需要'声明',例如在info.plist
,我们的扩展支持各种键盘类型,但是......好多或者更简单......我不明白......所以......我在问......如何将多种键盘类型添加到我的键盘扩展中?
非常感谢您的帮助!