2015-04-06 92 views
0

我是相當新的編程。我想修改十進制小鍵盤系統鍵盤,以便當用戶選擇一個特定的文本字段時,會出現一個十進制鍵盤。我不想要當前系統鍵盤中出現的字母字符,但否則他們的鍵盤將會是相同的。我不想爲全新的鍵盤使用擴展程序,因爲我知道這將需要一種方法來更改用戶的鍵盤,而我絕對不想要這樣做。我只想對蘋果十進制鍵盤進行小小的調整。從我研究到目前爲止,我被引導到自定義視圖和輸入在蘋果文檔中輸入數據的附件視圖。但是,這個文檔是我不熟悉的客觀的c語言。只是想知道什麼是最好的方式來實現這一點。非常感謝你。ios8修改系統鍵盤

+0

到目前爲止我所做的是爲所選字段創建一個新的UITextField子類。在那個子類中,我用getter和setter重寫了inputView屬性。這似乎是工作,但不知道這是否是最好的方法來做到這一點。只要我找出如何發佈代碼,我會在下面發佈我的代碼!我對此很新... – alionthego 2015-04-06 03:46:17

+0

您可以在Storyvoard中爲文本字段設置鍵盤類型屬性。將該屬性設置爲數字鍵盤。它將顯示沒有字母的數字鍵盤。我不知道爲什麼你寫了你想修改十進制鍵盤。 – Jassi 2015-04-06 03:57:57

+0

嗨Jassi。感謝您的回覆。不幸的是數字鍵盤沒有小數,所以這對我不起作用。我需要小數點鍵盤,這就是爲什麼我在上面提到。我想我應該說小數點是明確的。謝謝 – alionthego 2015-04-06 05:40:21

回答

0
import UIKit 

這是我的代碼。它似乎工作,但我不知道它是否是最有效的解決方案。任何投入將不勝感激。赦免雙關語!

class myTextField: UITextField { 

    override var inputView: UIView! { 
     get {var myView = getMyKeyboardView() 
      return myView} 
     set {} 
    } 

    func getMyKeyboardView() -> UIView! { 
     var myKeyboardView: UIView! 
     var keyboardNib = UINib(nibName: "myKeyboard", bundle: nil) 
     myKeyboardView = keyboardNib.instantiateWithOwner(self, options: nil)[0] as UIView 
     return myKeyboardView 
    }