#pragma mark - UITextFieldDelegate Methods
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//判断只能输入一个小数点
if([string isEqualToString:@"."]&&[textField.text containsString:@"."])
{
returnNO;
}
//只能输入10位小数
intintegerLength =10;
//只能输入2位小数
intdecimalLength =2;
if([textField.text containsString:@"."])
{
NSRange pointRange =[textField.text rangeOfString:@"."];
if(textField.text.length - pointRange.location ==(decimalLength +1))
{
if(range.location > pointRange.location)
{
if(string.length >0)
{
returnNO;
}
}
else
{
if(textField.text.length >(integerLength + decimalLength +1)&& string.length >0)
{
returnNO;
}
}
}
}
else
{
if([string isEqualToString:@"."])
{
if(textField.text.length - range.location <(decimalLength +1))
{
returnYES;
}
}
if(textField.text.length + string.length > integerLength)
{
returnNO;
}
}
return YES;
}
iOS开发 UITextField限制只能输入指定位数的小数和整数
猜你喜欢
转载自blog.csdn.net/weixin_34304013/article/details/87594845
今日推荐
周排行