嗨,我正在尝试在我的 iPhone 应用程序中显示一个自定义进度条,因为我正在编写一种方法来增加进度条值,一旦它的值变为 100%,那么我需要使我的计时器无效,我需要停止这个递归并显示下一个 viewController。我的代码片段如下所示,
-(void)progressNextValue
{
progressValue += 1.0f;
if(progressValue >= progress.maxValue){
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"end" message:@"TimeOut!!!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[alert show];
NSLog(@"Time Out!!!!");
[mytimer invalidate];
Second *sec = [[Second alloc] initWithNibName:@"Second" bundle:nil];
[self.view addSubview:sec.view];
}
progress.currentValue = progressValue;
mytimer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(progressNextValue) userInfo:nil repeats:YES];
}
- (void)viewDidLoad
{
[super viewDidLoad];
progress.maxValue = 100.0f;
[self progressNextValue];
}
在这里,即使我的progressValue = progress.maxValue
,mytimer
没有失效。
提前感谢任何帮助。