objective-c - 将 UITextField 限制为特定字符范围

标签 objective-c ios uitextfield uitextviewdelegate

有人可以帮我找出一种简单的方法来限制 UITextField 范围,以便输入的数字在 14 到 70 之间,如果数字大于或小于范围内的数字,则文本字段会自行清除?我已经将输入文本的长度限制为不超过 2 个字符,如下所示:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range      replacementString:(NSString *)string
{
NSString *newString = [ageField.text stringByReplacingCharactersInRange:range     withString:string];
return !([newString length] > 2);

剩下的唯一事情就是实现这个行为。有人吗?

最佳答案

更新:

  NSInteger v = [newString integerValue];
 if (v < 14 || v > 72) {
// Do whatever you do when the string value is invalid
// BUT ALSO ADD:
textView.text = @"";
}

而不是返回尝试:

   if (newString.length != 2) {
  // do what you want!
return;
} else {
// PUT YOUR CODE HERE
}

关于objective-c - 将 UITextField 限制为特定字符范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10396779/

相关文章:

iphone - 使用随机盐和初始化向量的 AES 128 加密/解密

objective-c - 如何在 iOS 10 中安排本地通知( objective-c )

ios - 如何使用 SKEmitterNode 效果像 SKShapeNode 一样绘制?

ios - iOS7 上的 UITextfield leftView/rightView 填充

iphone - 为电话号码文本字段设置适当的键盘

ios - NSLayoutConstraint 获得真正的值(value)

objective-c - 从 ASIHTTPRequest 切换到 AFNetworking - ASINetworkQueue 问题

ios - 如何在 iOS 中不指定 HTTP 或 HTTPS 的情况下打开 URL?

ios - 为 Apple Developer Program 创建新 Apple ID 的优势

swift - 确保电话号码 UITextField 具有 "+"前缀