2015-04-06 94 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 
    }