0

我有以下方法:

- (IBAction)digitPressed:(UIButton *)sender {
    NSLog(@"%@", sender.currentTitle);
    if (self.userTypingNumber) {
        if (![sender.currentTitle isEqualToString:@"."]) 
            self.display.text = [self.display.text stringByAppendingString:sender.currentTitle]; 
        else {
            NSRange range = [sender.currentTitle rangeOfString:@"."];
            if (range.location == NSNotFound) { 
                self.display.text = [self.display.text stringByAppendingString:sender.currentTitle];
            }
        }
    } else {
        self.display.text = sender.currentTitle;
        self.userTypingNumber = YES;
    }
}

我的问题是我的程序永远不会进入 de NSNotFound if。我正在制作一个计算器,它应该接受浮点数,但每当我按下 . 它只是通过 if 。知道有什么问题吗?

4

1 回答 1

0

看看你的逻辑,sender.currentTitle总是会出现@"."在你的 else 语句中,所以你的范围总是会有一个位置 0。

于 2012-01-19T01:34:03.383 回答