【问题标题】:How enter only four value in text field from keyboard?如何从键盘在文本字段中只输入四个值?
【发布时间】:2011-10-28 05:35:26
【问题描述】:
我正在制作一个我只想输入数值的应用程序。所以我选择数字键盘类型的键盘。现在我希望当用户单击文本字段并输入数值然后只输入 0,1,2 和 3 而不是其他任何内容。我将为此做些什么,以便我可以对文本字段的值施加限制?并且只输入单值而不是双值,即 11。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
}
提前致谢...
【问题讨论】:
标签:
iphone
keyboard
uitextfield
【解决方案1】:
如果 rhe 值受到限制,您应该尝试使用选择器视图或滑块作为字段的输入视图。
您将如何向用户传达数字小键盘上 60% 的按钮是可见的、启用的、可点击的,但不会执行任何操作?
【解决方案2】:
在textField:shouldChangeCharactersInRange:replacementString: 中,然后您可以检查用户刚刚输入的字符的有效性,对于任何无效字符返回 NO。
这是一个限制 UITextField 大小的代码示例:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if ([[textField text] length] + [string length] - range.length > MAX_LENGTH) {
return NO;
} else {
return YES;
}
}
另见this