为什么这段代码在Xcode4.5(带有ipad 6.0模拟器)中不能工作,而它却可以在Xcode4.4(带有ipad模拟器5.1)上工作。
- (IBAction)capitalDButtonTwo:(id)sender {
if ([capitalDResultLabelTwo text] == @"+") {
[capitalDResultLabelTwo setText:@"0"];
} else {
[capitalDResultLabelTwo setText:@"+"];
}
}这是一个按钮,可以在第一次按下时将同一视图中标签中的文本设置为"+“,然后将文本设置为"0”,然后在每次按下后设置为"+“。我想知道一个版本和另一个版本有什么不同,为什么这个简单的代码不能工作
发布于 2012-09-28 16:43:19
它不应该在任何一个Xcode版本中工作。您没有正确比较字符串:
语句[capitalDResultLabelTwo text] == @"+"测试两个NSString对象是否为完全相同的对象。我敢肯定,您的意图是测试标签的内容是否与"+"相同,因此需要使用[NSString isEqualToString:]
- (IBAction)capitalDButtonTwo:(id)sender {
if ([[capitalDResultLabelTwo text] isEqualToString:@"+"]) {
[capitalDResultLabelTwo setText:@"0"];
} else {
[capitalDResultLabelTwo setText:@"+"];
}
}https://stackoverflow.com/questions/12633466
复制相似问题