0

在我的应用程序项目中,我希望能够点击一个按钮,等待 5 秒钟,然后出现 UILabel 和 UIImageView。这是我到目前为止所拥有的:

- (IBAction)startTimer
{
    responseBox.placeholder = @"Message Here";
    timer = [NSTimer scheduledTimerWithTimeInterval:5.0 target:self selector:@selector(timerStop) userInfo:nil repeats:YES];
    mainInt +=1;
}

- (void)timerStop
{
    if (mainInt == 5)
    {
        [timer invalidate];
        titleLabel.hidden = NO;
        messageLabel.hidden = NO;
        messageLabel.text = @"Message";
        image.hidden = NO;
    }
}

一切都正确链接,发生了什么?

4

1 回答 1

1

mainInt仅在您按下按钮时才会增加startTimer,所以您在timerStop. 此外,如果您想mainInt正确递增,请使用mainInt++;

试试这个:

- (IBAction)startTimer
{
    responseBox.placeholder = @"Message Here";
    timer = [NSTimer scheduledTimerWithTimeInterval:5.0 target:self selector:@selector(timerStop) userInfo:nil repeats:YES];
    mainInt++;
}

- (void)timerStop
{
    [timer invalidate];
    titleLabel.hidden = NO;
    messageLabel.hidden = NO;
    messageLabel.text = @"Message";
    image.hidden = NO;
}
于 2012-06-30T00:09:46.710 回答