如何添加小数点按钮

时间:2013-03-26 20:58:15

标签: ios objective-c xcode4.5

如何添加小数点按钮。 我输入数字的代码:

number = number *10 + (int)[sender tag];
display2.text = [NSString stringWithFormat:@"%.10g",number];

我的十进制数代码。

NSString *currentText = display2.text;
if ([currentText rangeOfString:@"." options:NSBackwardsSearch].length == 0) {
    display2.text = [display2.text stringByAppendingString:@"."];

}

这是如何工作的?!输入12并按十进制。按数字3 = 123 :(

1 个答案:

答案 0 :(得分:0)

您获得123而不是12.3的原因在于您的代码中的其他按钮(不是小数点按钮)。虽然我会使用range.location == NSNotFound而不是range.length == 0来添加小数,但这不是问题。

问题是您正在执行号码* 10 + [发件人标签]。现在假设您输入1,然后输入2,然后输入小数。 “数字”将是12.,即12.现在,当你将它乘以10并加3时,你得到12 * 10 + 3 = 120 + 3 = 123。

要获得所需的实际数字(12.3),请使用:

display2.text = [display2.text stringByAppendingFormat:@"%i",[sender tag]];

为了消除它在字符串开头的零,你可以这样做:

if ([display.text isEqualToString:@"0"]) {
    display.text = [NSString stringWithFormat:@"%i",[sender tag]];
}
else {
    display2.text = [display2.text stringByAppendingFormat:@"%i",[sender tag]];
}