2016-05-24 49 views
1

我已經創建了自定義文本輸入視圖,並試圖強制鍵盤顯示鍵盤上的所有大寫;類似於UITextField。以下是我已經試過了,但它不是爲我工作:UIKeyInput與所有大寫鍵盤

class CustomInput: UIView, UIKeyInput { 

    // UIKeyInput inherits this property 
    var autocapitalizationType: UITextAutocapitalizationType { 
     get { return .AllCharacters } 
     set { } 
    } 

} 

我希望重寫變量,只允許.AllCharacters將鍵盤強制全部大寫,但事實並非如此。任何想法如何讓鍵盤全部大寫?

+0

將「UITextField」輸入字符改爲大寫不是更容易(也更可接受)嗎? – ZGski

+0

我可以使用'text.uppercaseString'在屏幕上顯示所有字符,但這不是我的問題。我的問題是鍵盤上的鍵顯示小寫。我想要的鍵是大寫。 – keithbhunter

+0

@ZGski沒有涉及'UITextField'。這是關於自定義輸入視圖。 – rmaddy

回答

0

我在當前正在處理的應用程序中遇到同樣的問題。花了相當長的時間試圖弄清楚這一點,尤其是因爲autocorrectionTypekeyboardType都似乎工作正常。

我目前的解決方法是使我的自定義視圖實現UITextInput而不是UIKeyInput,虛擬代碼爲所有未使用的屬性和功能。非常難看的解決方法,但這是我能夠實現它的唯一方法,所以我正在使用它。

有興趣看看有沒有人對此問題有深入的瞭解。

+0

我在發佈問題後的兩天內爲此打開了雷達。我還沒有收到蘋果的任何迴應。 – keithbhunter

+0

好吧,這讓我感覺很好 - 廣泛使用它,最後我唯一能想象的就是一個bug。 – jvmeer