2012-03-21 5 views
0

AVAudioPlayerは、再生ボタンがヒットしたときにviewcontrollersを更新し、viewcontrollersを異なる時間間隔でロードし、ユーザーヒット巻き戻しボタンの間にこの全プロセスを再開します再生ボタンの更新フローviewcontrollers。巻き戻しボタンがユーザーに当たったとき、どうやって止めることができますか?私はそれを、ユーザが巻き戻しボタンを押したとき、それはの初めに再生コントローラーを更新するための再生ボタンと巻き戻しボタンの競合

[timer invalidate]; 

を使用して、私はそれを修正

-(void)rewind:(id)sender{ 

audioPlayer.currentTime = 0; 

[audioPlayer play]; 

MainViewController *viewController = [[MainViewController alloc] init]; 

viewController.view.frame = CGRectMake(0, 0, 320, 480); 

[self.view addSubview:viewController.view]; 

[self.view addSubview:toolbar]; 

[viewController release]; 

self.timer = [NSTimer scheduledTimerWithTimeInterval:11 target:self selector:@selector(displayviewsAction:) userInfo:nil repeats:NO]; 

} 

-(void)playpauseAction:(id)sender 
{ 

    if 

    ([audioPlayer isPlaying]){ 

[sender setImage:[UIImage imageNamed:@"play.png"] forState:UIControlStateSelected]; 

     [audioPlayer pause]; 

    } else { 

[sender setImage:[UIImage imageNamed:@"pause.png"] forState:UIControlStateNormal]; 

     [audioPlayer play]; 


     self.timer = [NSTimer scheduledTimerWithTimeInterval:11 target:self selector:@selector(displayviewsAction:) userInfo:nil repeats:NO]; 
    } 

} 

- (void)displayviewsAction:(id)sender 
{ 
FirstViewController *viewController = [[FirstViewController alloc] init]; 

viewController.view.frame = CGRectMake(0, 0, 320, 480); 

[self.view addSubview:viewController.view]; 

[self.view addSubview:toolbar]; 

[viewController release];  

    self.timer = [NSTimer scheduledTimerWithTimeInterval:23 target:self selector:@selector(secondViewController) userInfo:nil repeats:NO];  

} 

答えて

0

再生ボタン用viewcontrollersを更新する前の継続的な処理を停止する必要があることを、このようにプログラムしたいです巻き戻しのステートメントと今それは正常に動作しています。

私の問題は解決しました。

関連する問題