带小数点的iPhone numberpad

带小数点的iPhone numberpad,iphone,objective-c,iphone-sdk-3.0,Iphone,Objective C,Iphone Sdk 3.0,我正在编写一个iPhone应用程序,它要求用户输入几个可能包含小数点的值(货币值、百分比等)。数值中的小数位数各不相同。问题是数字键盘不包含用于输入小数点的键 当我锁定手机时,输入密码的数字键盘上有一个自定义按钮,用于拨打紧急电话(如以下屏幕截图所示): 有人知道如何创建一个带有小数点按钮或自定义按钮(如上面的紧急呼叫按钮)的数字键盘吗 谢谢。创建一个包含一组按钮的UIView的UIViewController。现在你的键盘上可以有你想要的任何东西。没有苹果批准的方法来编辑现有的键盘。如果您希

我正在编写一个iPhone应用程序,它要求用户输入几个可能包含小数点的值(货币值、百分比等)。数值中的小数位数各不相同。问题是数字键盘不包含用于输入小数点的键

当我锁定手机时,输入密码的数字键盘上有一个自定义按钮,用于拨打紧急电话(如以下屏幕截图所示):

有人知道如何创建一个带有小数点按钮或自定义按钮(如上面的紧急呼叫按钮)的数字键盘吗


谢谢。

创建一个包含一组按钮的UIView的UIViewController。现在你的键盘上可以有你想要的任何东西。

没有苹果批准的方法来编辑现有的键盘。如果您希望他们允许,请提交功能请求

也就是说,在大多数应用程序中,键盘(UIKeyboard的实例)是一个单独的UIWindow,您可以在应用程序中的窗口上进行迭代,并开始添加响应相应触摸操作的自定义子视图。通过迭代
[[UIApplication sharedApplication]windows]
并检查描述是否包含字符串
UIKeyboard
来查找它。有关此方法和一些示例代码的更多信息,请参阅

另一种方法是创建自己的自定义视图,从头开始构建键盘。但是,如果你这样做的话要小心,因为这需要大量的手工工作,不仅是在创建键盘和使触摸行为与苹果的相匹配,而且在你添加的任何可以打开普通键盘的控件中——你需要重定向像
becomeFirstResponder
这样的东西来显示你自己的键盘,而不是苹果的


Edit:正如ZaBlanc所指出的,新版iOS可以通过
inputView
inputAccessoryView
属性来实现这一点。有关详细信息,请参阅类参考。

将UIKeyboardType设置为UIKeyboardTypeDecimalPad


iOS 4.1及更高版本中提供。

UITextField支持3.2+中的inputView属性,因此提供自己的视图要容易得多。:-)只是替换了键盘的位置。inputAccessoryView还允许您轻松添加工具栏。