6

我有一个 UITextField 供用户输入他们的街道地址。我已将该字段的键盘适当地设置为默认值。

由于大多数人的街道地址都以数字开头,我希望它默认为数字模式,就好像用户已经按下了 .?123 键一样。这样,他们可以立即开始输入地址的数字部分,并且只要按下空格键,它就会立即转换回字母。

这可能吗?

4

1 回答 1

1

当前没有执行此操作的设置或选项。您必须以编程方式执行此操作,方法是通过UITextFieldTextDidChangeNotification或使用textField:shouldChangeCharactersInRange:replacementString:委托方法通过通知观察空格键输入,然后切换键盘。

即使使用 UIKeyboardTypeNumbersAndPunctuation,iOS 也会在空格键后切换到字母键盘。这在 5.0 中已修复。

当您为某个字段切换键盘类型时,您实际上只是在说明下次显示时使用哪个键盘。如果键盘已经显示,切换类型不会改变它。所以,隐藏键盘,切换类型,然后再次显示:

[textField1 resignFirstResponder];
[textField1.keyboardType = UIKeyboardTypeAlphabet];
[textField1 becomeFirstResponder];
于 2013-03-29T13:12:42.897 回答