我有一个UITextField供用户输入他们的街道地址。我将键盘适当地设置为字段的默认值。
由于大多数人的街道地址都以数字开头,我希望它默认为数字模式,就像用户已按下。?123键一样。这样,他们就可以立即开始输入他们地址的数字部分,一旦按下空格键,它就会立即转回到alpha。
这可能吗?
答案 0 :(得分:1)
目前没有设置或选项可以执行此操作。您必须通过UITextFieldTextDidChangeNotification
或textField:shouldChangeCharactersInRange:replacementString:
委托方法查看空格键输入,然后切换键盘,以编程方式执行此操作。
即使使用UIKeyboardTypeNumbersAndPunctuation,iOS也会在空格键后切换到字母键盘。这已在5.0中修复。
当您切换字段的键盘类型时,您实际上只是说下次显示时要使用的键盘。如果键盘已经显示,切换类型不会改变它。因此,隐藏键盘,切换类型,然后再次显示:
[textField1 resignFirstResponder];
[textField1.keyboardType = UIKeyboardTypeAlphabet];
[textField1 becomeFirstResponder];