iOS如何限制textField的输入格式
2016-10-27 17:15
417 查看
当你在写一个应用,里面有显示限制某些金额的时候(例如金额:9999.99这样的),可以通过以下代码来实现
代码块
#pragma mark - 键盘监听方法 - (void)UIControlEventEditingChanged:(UITextField *)textField { //限制不能输入两个小数点 NSArray *arr = [textField.text componentsSeparatedByString:@".”]; if (arr.count > 2) { textField.text = _previousTextFieldContent; textField.selectedTextRange = _previousSelection; return; } NSString *amount = textField.text; NSInteger digit; //判断是否包含小数点 if([amount rangeOfString:@"."].location != NSNotFound) { NSArray *arr = [amount componentsSeparatedByString:@"."]; NSString *intNum = arr[0]; NSString *floatNum = arr[1]; //金额的整数位数 digit = intNum.length; //小数的位数 NSInteger floatDigit = floatNum.length; if (digit > 7) { textField.text = _previousTextFieldContent; textField.selectedTextRange = _previousSelection; return; } if (floatDigit > 2) { textField.text = _previousTextFieldContent; textField.selectedTextRange = _previousSelection; return; } } else { //不包含小数点 digit = amount.length; if (digit > 7) { textField.text = _previousTextFieldContent; textField.selectedTextRange = _previousSelection; return; } } return; } #pragma mark - textFieldDelegate - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { _previousTextFieldContent = textField.text; _previousSelection = textField.selectedTextRange; return YES; }
相关文章推荐
- iOS--如何限制textField输入时小数点后需要的个数
- IOS中如何限制TextField中输入的类型以及长度
- iOS 代码限制textField的输入长度并且删除按钮还得有效
- iOS textfield输入长度限制汉字无效
- 仅几行iOS代码限制TextField输入长度
- iOS 限制TextField输入长度(标准)
- IOS中限制TextField中输入的类型以及长度
- iOS开发之textField限制输入字数
- iOS开发中如何设置textfield输入长度并且仅仅只能输入数字
- iOS 怎么限制textView和textField的输入字数
- iOS textfield 限制输入字数长度
- iOS textField控件控制输入字符串的格式
- IOS开发中限制TextField输入的类型及长度的方法
- iOS中textfield有效限制输入长度
- iOS【textView或者textField文本输入字数限制】
- iOStextfield 限制输入字符长度和过滤表情符号
- iOS限制TextField可输入的长度
- iOS(Swift) TextField限制输入文本的长度(不是字数)
- 如何让textField输入框 限制输入字数的同时,还只让输入数字和字母
- iOS(Swift) TextField限制输入文本的长度(不是字数)