2009-10-14 24 views
0

我向用户显示一个显示数字键盘的字段,并且只希望他们能够输入数字 - 无小数。但是,由于该字段是货币字段,因此我希望该号码始终显示两位小数。您可能在ATM上看到过这种类型的界面。格式整数作为两个地方的小数点

我已经看过NSNumberFormatter文档和使用[NSString stringWithFormat]的一般格式,但是我不清楚这是一个很好的方法。我正在使用UIControlEventEditingChanged事件的选择器监听该字段。在那个选择器中,我想要进行格式化。当我使用[NSString stringWithFormat:@“%。2f”,amount]时,它总是将数量放在小数点左边。我希望它始终是小数部分,直到输入第三位数字,所以如果用户键入32,实际金额是0.32。如果用户输入173,则该值实际上是1.73。如果用户输入10047,实际值应该是100.47等。

有什么建议吗?

谢谢。

+0

任何原因你不只是100分之前显示? – paulthenerd 2009-10-14 15:38:55

+0

没有理由,除了我有一个可怕的头冷,今天没有思考。 ;-) 谢谢。 – 2009-10-14 15:52:24

回答

2

将它们输入的金额视为美分而不是美元。格式化之前将其除以100。

+0

现在很明显。我想,我应该今天睡在床上。头部感冒吸了。 ;-) 感谢你的回答。 – 2009-10-14 15:54:17

+2

我不会使用浮点数,保留为整数:[NSString stringWithFormat:@“%d。%02d”,amount/100,amount%100] – progrmr 2009-10-14 16:37:07

相关问题