由於鍵盤不支持「數字和小數」類型,我正在使用自定義鍵盤和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
,我們的擴展支持各種鍵盤類型,但是......好多或者更簡單......我不明白......所以......我在問......如何將多種鍵盤類型添加到我的鍵盤擴展中?
非常感謝您的幫助!