在UITextfield中格式化Interger,带有两个十进制格式

时间:2011-08-25 09:36:02

标签: iphone objective-c uitextfield

我向用户显示一个显示数字键盘的字段,只希望他们能够输入带小数的数字,它应该只有一个。在十进制之后它应该至少有2位数。在十进制之前应至少有一位数。然后输入不能为0或0.00。假设如果用户输入数字123456它被接受然后123.56它也接受如果用户输入123然后它接受000123并且我如何取最大长度的textfield是6并且最小是1请帮助我这个... < / p>

提前致谢

2 个答案:

答案 0 :(得分:0)

检查此条件并添加前缀

 NSLog(@"%d",[textfield.text length]);                 
  if(length<0)
  {
   add prefix for remaining;
  }

答案 1 :(得分:0)

我为你创建了一个逻辑。你可以使用它:; -

NSString *string=yourtextField.text;//it will contain your text field text
    int stringLength=[string length];
    if (stringLength>6) {
        NSLog(@"error");
    }
    else if(stringLength>1)
    {
        int n=6-stringLength;
        for (int i=0; i<n; i++) {
            NSString *newString=[NSString stringWithFormat:@"0%@",string];
            string=newString;
        }
        NSLog(@"%@",string);
    }
    else {
        NSLog(@"empty string");
    }

希望这会对你有所帮助。