好的。我的应用程序有一个文本字段,旁边是两个按钮(加号按钮和等号按钮)。当您按下“加号”按钮时,它会获取 textField 中的文本并为其添加一个“+”。下面的代码:
- (IBAction)plusButtonPressed:(id)sender {
NSString *plusString = @"+";
NSString *inputString = carbsField.text;
NSString *outputString = [NSString stringWithFormat:@"%@%@",inputString,plusString];
NSLog(@"%@",outputString);
[carbsField setText:outputString];
}
我最终会让它变得更聪明,这样我就不能放两个加号或其他任何东西。无论如何,然后我希望等号按钮获取文本字段中的任何内容,它应该类似于:“23+54+2.2”并获得这些值的总和。我相信我知道如何获取一个整数并将其变成一个字符串,但我想验证它:
int value = 56;
NSString *string = @"%d",value;
好吧,如果有人能告诉我如何做到这一点,我将不胜感激。谢谢。
编辑
目前,我还没有尝试过任何东西。这是因为我不知道从哪里开始。我有一个想法,但我不知道如何执行它。我相信我需要在“+”将它们转换为之前获取所有字符int
,然后获取这些值的一些数组的总和。
编辑 #2 我现在使用:
- (IBAction)equalButtonPressed:(id)sender {
NSString *inputString = carbsField.text;
NSArray *numbers = [inputString componentsSeparatedByString:@"+"];
int sum = 0;
for (NSString *number in numbers) {
sum += [number intValue];
}
NSString *theSum = [NSString stringWithFormat:@"%d",sum];
NSLog(@"%@",theSum);
}
但是,它根本不会记录任何内容。我做错什么了?