Link 带有 UIProgressView 的 NSTimer
Link NSTimer with UIProgressView
我用 NSTimer 做了一个 45 秒的倒计时,如下所示:
-(IBAction)Start {
mainInt = 45;
timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(countDown) userInfo:nil repeats:YES]; }
- (void)countDown {
mainInt -= 1;
seconds.text = [NSString stringWithFormat:@"%i", mainInt];
if (mainInt == 0) {
[timer invalidate];
}
然后我在故事板中放置了一个简单的 UIProgressView。我尝试 link 在没有代码的情况下将两者结合在一起,但这显然不是那么容易。我如何 link UIProgressView 到 NSTimer 以确保进度条在倒计时达到 0 时变满?
您可以通过 NSTimer
的选择器方法更新您的 UIProgressView
- (void)countDown
{
mainInt -= 1;
seconds.text = [NSString stringWithFormat:@"%i", mainInt];
yourProgressView.progress = (45 - mainInt)/45.0f;
if (mainInt == 0)
{
[timer invalidate];
}
}
我用 NSTimer 做了一个 45 秒的倒计时,如下所示:
-(IBAction)Start {
mainInt = 45;
timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(countDown) userInfo:nil repeats:YES]; }
- (void)countDown {
mainInt -= 1;
seconds.text = [NSString stringWithFormat:@"%i", mainInt];
if (mainInt == 0) {
[timer invalidate];
}
然后我在故事板中放置了一个简单的 UIProgressView。我尝试 link 在没有代码的情况下将两者结合在一起,但这显然不是那么容易。我如何 link UIProgressView 到 NSTimer 以确保进度条在倒计时达到 0 时变满?
您可以通过 NSTimer
UIProgressView
- (void)countDown
{
mainInt -= 1;
seconds.text = [NSString stringWithFormat:@"%i", mainInt];
yourProgressView.progress = (45 - mainInt)/45.0f;
if (mainInt == 0)
{
[timer invalidate];
}
}