2012-04-30 4 views
-1
NSString *title=btn.titleLabel.text; 

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

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

UIButton의 제목을 확인하고 싶습니다. 하지만 내 코드는 항상 else 문을 실행합니다.uibutton의 제목을 확인하는 방법

이 코드의 오류는 무엇입니까?

+0

당신은 표준 서식을 일부 코드를 조사 할 수 있습니다 ... – Lix

답변

1

사용

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

대신 == 연산자를.

0

사용 bun.title를 사용, '=='를 사용하여 두 개의 문자열을 비교하지 마십시오 것은 EqualTo가 있습니다 : @ ""당신을 위해 작동합니다.

If([btn.titleLabel.text isEqualToString:@"Your text"]) 
{ 
//do this 
} 
else 
{ 
//do this 
} 
+0

@Krishna 당신이 당신의 정확한 출력을 발견 할 것이다 올바른 사용 같은 코드입니다. – vishiphone

3

이 줄을 시도 오신 것을 환영합니다.

0

당신은 문자열의 포인터가 다른 문자열의 같은 경우 확인하고 ==로, 문자열을 비교하는 ==를 사용하지 마십시오, 그것은 당신이 원하는 게 아니에요 : 는

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 
} 
3
NSString *title=[btn currentTitle]; 

if([title isEqualToString:@"SelectCategory"]) 
{ 
    NSLog(@"Equal"); 
} 
0

두 문자열을 시도하거나 두 개체는 ==를 사용하여 비교 할 수 없습니다. 두 개체를 비교하려면 isEqual을 사용해야합니다. 이 경우

:

if([stringToBeCompared isEqualToString:@"comparestring"]) 
{ 
    //statement 
} 
관련 문제