我正在制作一个我只想输入数值的应用程序。所以我选择数字键盘式键盘。现在我希望当用户点击文本字段并输入数值时,只输入0,1,2和3而不是其他任何内容。我将为此做些什么,以便我可以对文本字段的值施加限制?并且只输入单个值而不是双重值,即11。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
}
谢谢你的进步......
答案 0 :(得分:3)
如果rhe值受到限制,您应该尝试使用选择器视图或滑块作为该字段的输入视图。
您如何与用户沟通,数字键盘上60%的按钮是可见的,启用的,可点击的,但什么都不做?
答案 1 :(得分: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