我正在为Ipad开发一个应用程序。我正在设计一个忘记密码的屏幕,允许用户输入密码UITextField
。按照设计,密码只允许数字输入。我可以在iPhone上设置UITextFiled
keyboardtype
为phonepad
,但该选项似乎不适用于Ipad(Ipad总是显示完整的键盘布局)。我们如何才能实现只有号码的iPad应用程序的键盘?UItextField限制用户在ipad上输入数字IOS应用程序
我必须设计自己的键盘布局吗? 任何帮助是非常感谢。谢谢!
我正在为Ipad开发一个应用程序。我正在设计一个忘记密码的屏幕,允许用户输入密码UITextField
。按照设计,密码只允许数字输入。我可以在iPhone上设置UITextFiled
keyboardtype
为phonepad
,但该选项似乎不适用于Ipad(Ipad总是显示完整的键盘布局)。我们如何才能实现只有号码的iPad应用程序的键盘?UItextField限制用户在ipad上输入数字IOS应用程序
我必须设计自己的键盘布局吗? 任何帮助是非常感谢。谢谢!
即使您使用只显示数字的自定义键盘,用户也可以始终粘贴某些东西或使用外部硬件键盘,但键盘类型并不指定文本字段接受的输入类型。
要做到这一点,你需要观察的输入,例如,通过成为UITextFieldDelegate然后:
例中迅速:
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool{
// non decimal digit character set, better save this as a property instead of creating it for each keyboard stroke
let non_digits = NSCharacterSet.decimalDigits.inverted
// Find location for non digits
let range = string.rangeOfCharacter(from: non_digits)
if range == nil { // no non digits found, allow change
return true
}
return false // range was valid, meaning non digits were found
}
这将防止任何非数字字符被添加到文本框。
iPad上没有内置的仅限数字(电话/别针)键盘 如果需要在iPad上使用,则需要实现自己的键盘。
有许多例子在那里:
https://github.com/azu/NumericKeypad
感谢您的帮助。用于iPad应用程序中键盘的布局。我们可以更改默认布局(包含所有字符,数字符号的布局)吗? –
@LêKhánhVinhiPad上没有像iPad那样的小数点布局,我看到许多使用PIN码的应用程序都会为此使用自己的键盘。 –
你知道任何库或例子,以便我们可以按照实现ipad应用程序的数字键盘? –