显示不必要的“0”输入

时间:2013-02-22 21:10:38

标签: iphone xcode zero decimalformat

我正在构建一个计算器,并且遇到显示不必要的0的问题(它没有显示它们,我想要它)。

现在做的一个例子如下。 [代表计算器屏幕]

[空白计算器屏幕]

用户点击“4”

[4]

用户点击“。”

[4]

用户点击“0”

[4]

用户点击“0”

[4]

用户点击“5”

[4.005]

相反,我想让它做到以下几点:

[空白计算器屏幕]

用户点击“4”

[4]

用户点击“。”

[4]

用户点击“0”

[4.0]

用户点击“0”

[4.00]

用户点击“5”

[4.005]

我使用数字格式化程序,如下所示......

 formatter = [[NSNumberFormatter alloc] init];
     formatter.numberStyle = NSNumberFormatterDecimalStyle;
     formatter.maximumIntegerDigits = 13;
     formatter.minimumFractionDigits = 0;
     formatter.maximumFractionDigits = 13;
     formatter.maximumSignificantDigits = 13;
     formatter.usesGroupingSeparator = YES;
     formatter.groupingSeparator = @",";
     formatter.decimalSeparator = @".";
     formatter.generatesDecimalNumbers = true;

我使用以下内容来拨打我的号码......

 buttonScreen.text = [formatter stringFromNumber:
 [NSNumber numberWithDouble:currentNumber]]

谢谢!

2 个答案:

答案 0 :(得分:1)

它没有给你零,因为4是4,4.0,4.00等的确切浮点表示。我建议你将用户输入存储到NSString *中,然后将其转换为{NSNumber 1}}当你需要做实际数学时。

答案 1 :(得分:0)

您可以通过在“=”之前不评估输入或按下操作键来解决此问题。

您只需添加到字符串并在完成条目后将字符串转换为正确的数字,因为已按下其他键。