2015-10-15 34 views
0

嗨之後我在iOS的初學者在我的項目,我使用進度條怎樣一個視圖控制器移動到另一個視圖 - 控制iOS中加載進度

在這裏,我的主要要求我想以後加載進度條上5秒完成該進度條裝載我想搬到另一個視圖控制器爲了這個,我已經使用了一些代碼,但不工作,請幫助我

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    self.progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault]; 
    self.progressView.center = self.view.center; 
    [self.view addSubview:self.progressView]; 

    self.myTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(updateUI:) userInfo:nil repeats:YES]; 


} 

- (void)updateUI:(NSTimer *)timer 
{ 
self.progressView.progress += 0.5; 

    ContactVC*VC = [self.storyboard instantiateViewControllerWithIdentifier:@"ContactVC"]; 
    [self.navigationController pushViewController:VC animated:YES]; 

} 
+0

你把重複=是。所以計時器總是一次又一次地開火。如果你想停止那個定時器並移動到下一個視圖控制器,那麼你必須提出一些條件。比如,定時器應該在一段時間後停止,以便您需要使定時器失效,並且無效後必須再次推送另一個視圖控制器。 – Birju

回答

1
- (void)viewDidLoad { 
    [super viewDidLoad]; 

    progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault]; 
    progressView.center = self.view.center; 
    [self.view addSubview:progressView]; 

    myTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(updateUI:) userInfo:nil repeats:YES]; 
} 

- (void)updateUI:(NSTimer *)timer 
{ 
    progressView.progress += 0.5/10; 

    if ((int)progressView.progress) { 

     [myTimer invalidate]; 

    Demoview*VC = [self.storyboard instantiateViewControllerWithIdentifier:@"Demoview"]; 
    [self.navigationController pushViewController:VC animated:YES]; 
    } 
} 
+0

感謝工作正常 – Krish

0

更新這個方法:

- (void)updateUI:(NSTimer *)timer 
{ 
    self.progressView.progress += 0.5/100;//because this limit is [0-1]. So, you have divide each progress unit by 100 in order to show percentage progress. 
    NSLog(@"%f",self.progressView.progress); 
    if ((int)self.progressView.progress) { 
     NSLog(@"Call View"); 
     [self.myTimer invalidate]; 
     self.myTimer = nil;//so that timer not fire again 
     ContactVC *VC = [self.storyboard instantiateViewControllerWithIdentifier:@"ContactVC"]; 
     [self.navigationController pushViewController:VC animated:YES]; 
} 
} 
相關問題