2012-02-13 6 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:@".") 
関連する問題