我必须在iPhone应用程序中实现一个小功能,并且想知道是否有办法使用 if 语句,其中条件是按钮的字符串。
以下是相关代码示例:
- (IBAction)someMethod:(id)sender{
UIButton *button = (UIButton *)sender;
if ( button.titleLabel.text == “SomeText” )
{
//do something
}
else
{
// some other thing
}
现在我无法使它工作,因为我认为我在button.titleLabel.text中使用了错误的代码。我甚至试过@“SomeText”),但我总是在//其他东西。
我做错了什么?
感谢。
答案 0 :(得分:1)
您目前正在做的是比较两个指向对象的指针,对象button.titleLabel.text
和@"SomeText"
。由于两者都指向内存中的不同位置,因此比较将返回NO
。
但是,如果您要比较两个NSString
个对象的值,则可以使用[button.titleLabel.text isEqualToString:@"SomeText"]
。
另请注意,"SomeText"
与@"SomeText"
不同!第一个是常规C字符串,其中最后一个是Cocoa NSString
对象。