每当我按下按钮时,我都试图在标签上加上0.010000,但当我这样做时,它会输出:0.010000而不是0.01?
这是我的代码:
//.h
@property (nonatomic, assign) double userPoints;//.m
- (IBAction)myButton
{
self.userPoints = self.userPoints + 0.01;
self.myLabel.text = [NSString stringWithFormat:@"%lf", self.userPoints];
}发布于 2015-04-28 20:27:46
您需要通过使用%.2告诉浮点数只输出两个小数位,如下所示:
self.myLabel.text = [NSString stringWithFormat:@"%.2lf", self.userPoints];发布于 2015-04-28 20:41:47
虽然使用C样式的格式字符串可以工作,但如果这是一个面向控件的用户,它可能更适合于一个更可本地化的解决方案。
看看NSNumberFormatter。像这样的事情应该有效:
NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setNumberStyle: NSNumberFormatterDecimalStyle];
[formatter setMaximumFractionDigits: 2];
self.myLabel.text = [formatter stringFromNumber: @(self.userPoints)];(将格式化程序保存为成员也会更有效.)
https://stackoverflow.com/questions/29929256
复制相似问题