2012-02-13 1 views
0

소수점 버튼을 눌렀을 때 간단한 코드를 트리거하도록 만든 계산기 앱을 얻으 려합니다 (값 당 하나의 소수점 만 허용).). 그러나 어떤 이유로 든 이러한 숫자에 관한 if 문이 실행되지 않습니다. NSLogged 그것의 출력 및 실제로 "로 표시됩니다." 그래서 나는 왜 그런지 알 수 없다. 나는 그것을 바꿨다. 다른 어떤 가치에 대해서도, 아무것도 그들을 방아쇠를 당긴 것처럼 보이지 않습니다.발신자 UIButton의 currentTitle을 읽는 문장이 작동하지 않는 경우

NSString *digit = [sender currentTitle]; 
if (self.userIsInTheMiddleOfEnteringANumber) { 
    self.display.text = [[[self display] text] stringByAppendingString:digit]; // All in one line! 
    NSLog(@"Digit is equal to %@",digit); 
    if (digit == @".") NSLog(@"That was a decimal point!"); 
} else { 
    self.display.text = digit; 
    if (digit == @".") NSLog(@"You can't begin a number with a decimal!"); 
    self.userIsInTheMiddleOfEnteringANumber = YES; // If they aren't typing, now they are! 
} 

답변

0

문자열을 ==와 비교하지 마십시오. isEqualToString 사용

if ([digit isEqualToString:@"."]) 

== 검사를 포인터 평등이 아닌 문자열 어떤지.

+0

을 완벽한, 고맙다! – Luke

0

== 작동하지 않습니다

if (digit == @".") 

문자열 사용을 위해 :

if([digit isEqualToString:@".") 
관련 문제