您好。我正在尝试创建一个计算器,当我尝试使用点时它不起作用。当我点击点按钮时,所有其他数字都会被删除,并且该点将保留在开头。
- (IBAction)buttonPoint:(id)sender {
if (self.statusMode == false) {
winMargin.text = [winMargin.text stringByAppendingString:@"."];
winMarginString = winMargin.text;
winMarginInt = [winMarginString doubleValue];
NSLog(@"%@", winMargin.text); // .
NSLog(@"%.20f", winMarginInt); // Gives back 0.00000000000000000000
}
}
- (IBAction)buttonOne:(id)sender {
if (self.statusMode == false) {
winMargin.text = [winMargin.text stringByAppendingString:@"1"];
winMarginString = winMargin.text;
winMarginInt = [winMarginString doubleValue];
NSLog(@"%@", winMargin.text);
NSLog(@"%.20f", winMarginInt);
}
}
答案 0 :(得分:0)
winMargin.text不可变,因此会被覆盖。
您需要NSMutableString来存储文本然后追加。
示例:
NSMutableString *str=[[NSMutableString alloc]init];
str=winMargin.text
winMargin.text=[str stringByAppendingString:@"1"];