如何检查UILabel中的文本?

时间:2011-11-01 08:34:35

标签: iphone objective-c ios xcode uilabel

  

可能重复:
  How to compare strings? (== returns wrong value)

我有以下代码,但没有任何反应,为什么会这样?:

if(Assignment1DueDate.text == @"0 days until due"){

        [Assignment1DueDate setText:@"Due tomorrow"];

        [maincelltext addObject:Assignment1.text];
        [subtitlecelltext removeObject:Assignment1DueDate.text];
        [subtitlecelltext addObject:Assignment1DueDate.text];

}

P.S。 Assignment1DueDate是UILabel。

4 个答案:

答案 0 :(得分:11)

if([Assignment1DueDate.text isEqualToString:@"0 days until due"]){

 // do your stuff
}

答案 1 :(得分:1)

使用isEqualToString方法比较2个字符串。无法使用'=='运算符比较字符串。

答案 2 :(得分:0)

if([Assignment1DueDate.text isEqualToString :@"0 days until due"])
{
}

如果要比较字符串,则必须使用isEqualToString。如果要比较两个对象,则必须使用isEqual函数

答案 3 :(得分:0)

以下代码用于两个字符串的Case_Insensitive比较。

 UILabel *labl = [[UILabel alloc] initWithFrame: CGRectMake(50, 50, 100, 80)];
 labl.text = @"my Label";
 [self.view addSubview:labl];


 if ([ labl.text caseInsensitiveCompare:@"MY LABel"]==NSOrderedSame) 
 {
     // Code to be executed if Assignment1DueDate is equal to the entered String.
     NSLog(@"Label and String are Same");
 }
 else
 {
     // Code to be executed if Assignment1DueDate is Not equal to the entered String.
     NSLog(@"Label and String are Not Same");
 }

上面的代码返回“标签和字​​符串相同”。 这段代码工作正常,我已经测试过了。希望它会对你有所帮助。