如何检测数字和十进制键盘iOS

时间:2014-10-10 06:08:03

标签: ios iphone swift keyboard numpad

我正在开发一个自定义键盘,根据Apple App Store Review指南,我必须提供十进制和数字键盘的键盘:

Keyboard extensions must provide Number and Decimal keyboard types as described in the App Extension Programming Guide or they will be rejected

所以我必须为Decimal和Number Textfield提供键盘,所以如何检测文本字段类型。

App Extension Programming Guide中没有关于数字或小数键盘的信息,那么如何检测我应该加载十进制键盘或数字小键盘的文本字段?

1 个答案:

答案 0 :(得分:1)

您可以在视图显示之前获取当前键盘类型(在Swift中)。

   override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)

        // Setup keyboard manager to correct type
        if let inputTraits = self.textDocumentProxy as? UITextInputTraits {
           let keyboardType = inputTraits.keyboardType
           let returnKeyType = inputTraits.returnKeyType
        }
    }

这是我的项目,但为了清晰起见重新格式化。我也没有编译它,因为它是一个如此简单的例子。

我发现在视图可见或即将出现之前不信任任何扩展API值是好的,但您也可以在viewDidLoad()中尝试此操作