0
NSString *title=btn.titleLabel.text; 

NSLog(@"Title=%@",title); 

if(title == @"SelectCategory") 
{
    //alert    
}
else
{
    //somecode
}

UIButtonのタイトルを確認したい。しかし、私のコードは常にelseステートメントを実行しています。

このコードのエラーは何ですか?

4

8 に答える 8

4

「==」を使用して 2 つの文字列を比較しないでください。isEqualToStringを使用してください

if ([title isEqualToString:@"SelectCategory"]){
   //alert
}else{
   //somecode
}
于 2012-04-30T11:41:24.397 に答える
3
NSString *title=[btn currentTitle];

if([title isEqualToString:@"SelectCategory"])
{
  NSLog(@"Equal");
}
于 2012-04-30T12:00:09.120 に答える
3

この行を試してください:

If([btn.titleLabel.text isEqualToString:@"Your text"])
{
//do this
}
else
{
//do this
}
于 2012-04-30T11:43:02.853 に答える
1

使用する

if ([title isEqualToString:@"SelectCategory"]) {}

==オペレーターの代わりに。

于 2012-04-30T11:41:14.577 に答える
0

文字列のポインタが別の文字列と同じであるかどうかをチェック==しているので、文字列を比較するために使用しないでください。それはあなたが望むものではありません。==

于 2012-04-30T11:47:28.877 に答える
0

これを試して

UIButton *YourButton=btn;    

if([[YourButton titleForState:UIControlStateNormal] isEqualToString:@"SelectCategory"])
{
        // normal
}
else if([[YourButton titleForState:UIControlStateHighlighted] isEqualToString:@"SelectCategory"])
{
        //highlighted
}
else if([[YourButton titleForState:UIControlStateSelected] isEqualToString:@"SelectCategory"])
{
        //selected
}
else
{
        //somecode
}
于 2012-04-30T11:47:42.370 に答える
0

を使用して 2 つの文字列または 2 つのオブジェクトを比較することはできません==。2 つのオブジェクトを比較するには、 を使用する必要がありますisEqual

この場合 :

if([stringToBeCompared isEqualToString:@"comparestring"])
{
   //statement
}
于 2012-04-30T12:03:52.587 に答える
0

bun.title is Equalto:@"" を使用するとうまくいきます。いらっしゃいませ

于 2012-04-30T11:42:22.143 に答える