2010-01-12 2 views
0

나는 정말로 좌절하고있다! 나는 지금 새로운 문제가, 내가 원하는 모든)레이블의 텍스트 값을 어떻게 봅니까?

lblMessage.Text = "30 초"는 다음 몇 가지 코드 을, 그렇지 않으면 다른 코드 내가 예상 오류를 얻을

if (lblMessage.text isEqualToString:@"30 Seconds") 
{ 
    NSString *strPlayerAtTable = [[NSString alloc] initWithFormat:@"%@ at table", ActivePlayer]; 
    lblMessage.text = strPlayerAtTable; 
} 
else 
if (nStopClockPos == 30) 
{ 
    lblTime.textColor = [UIColor yellowColor]; 
    lblMessage.text = @"30 Seconds"; 
} 

을 말하는 것입니다 before isEqualToString

내가 새 문자열 변수에 넣었습니까?

건배

+0

, 당신은'strPlayerAtTable' 누출된다. '[strPlayerAtTable release];를'lblMessage.text'에 할당 한 후 추가하십시오. –

답변

7

하려고 문이 실제로 호출하는 경우는 NSString의 비교 방법에 괄호를 추가 : BTW

if ([lblMessage.text isEqualToString:@"30 Seconds"]) 
+2

설명 : isEqualToString :'은 연산자가 아닙니다. 당신은'isEqualToString :'* message *를 보낼 필요가있다. 그렇게하기 위해서는 항상 대괄호로 묶인 메시지 표현이 필요하다. 이것은'if' 명령문 조건의 둥근 괄호 (괄호 안의 기호) 내에서도 적용됩니다. –

+0

다른 설명 :'lblMessage.text'는'NSString' 객체이며이 클래스의 멤버로서'isEqualToString : (NSString *)'메서드를 가지고 있습니다. 따라서 대괄호를 사용하여 해당 메서드를 호출하고 비교할 NSString (이 경우'@ "30 Seconds"') 인수를 전달해야합니다. – Dimitris

관련 문제