シンプルな電卓アプリのアップデートに取り組んでいます。更新には履歴表示が含まれます。私の問題は、数字を入力しているときに、ログ表示が最初の数字を無視し、残りのすべてを完全に記録することです。「例」と入力する1234567 + 1234
と、ログに「234567 + 234」と表示されます。そのため、あるべきときに最初の数字が表示されることはありません。
- (IBAction)digitPressed:(UIButton*)sender;
{
NSString *digit = [[sender titleLabel] text];
NSRange range = [[display text] rangeOfString:@"."];
if (userIsInTheMiddleOfTypingANumber) {
if ( ! ([digit isEqual:@"."] && (range.location != NSNotFound)))
[display setText:[[display text]stringByAppendingString:digit]];
self.logDisplay.text = [self.logDisplay.text stringByAppendingFormat:@"%@", digit];
} else {
if ([digit isEqual:@"."]) {
[display setText: @"0."];
}
else {
[display setText:digit];
}
userIsInTheMiddleOfTypingANumber = YES;
}
}
前もって感謝します!