Невозможно удалить или остановить AVPlayer

У меня есть AVPlayer, который я загружаю в новое представление всякий раз, когда нажимается ссылка.

-(void)createAndConfigurePlayerWithURL:(NSURL *)movieURL sourceType:(MPMovieSourceType)sourceType {
self.playerItem = [AVPlayerItem playerItemWithURL:movieURL];
customControlOverlay = [[AFDetailViewController alloc] initWithNibName:@"AFMovieScrubControl" bundle:nil];
backgroundWindow = [[UIApplication sharedApplication] keyWindow];
[customControlOverlay.view setFrame:backgroundWindow.frame];
[backgroundWindow addSubview:customControlOverlay.view];

playerLayer = [AVPlayerLayer playerLayerWithPlayer:[AVPlayer playerWithPlayerItem:playerItem]];
[playerLayer.player play];
playerLayer.frame = customControlOverlay.view.frame;
[customControlOverlay.view.layer addSublayer:playerLayer]; 
}

Приведенный выше код добавляет AVPlayer в мое приложение и работает нормально. У меня есть переключатель в моем наконечнике customControlOverlay, который должен удалить представление и остановить воспроизведение AVplayer.

-(IBAction)toggleQuality:(id)sender {
if (qualityToggle.selectedSegmentIndex == 0) {
    NSLog(@"HD");
    [playerLayer.player pause];
    [self.view removeFromSuperview];

} else if (qualityToggle.selectedSegmentIndex == 1) {
    NSLog(@"SD");
}
}

Вид убирается корректно, но плеер все равно играет в фоновом режиме. После небольшого тестирования плеер не будет реагировать ни на какой код в методе toggleQuality, кроме строк, которые у меня есть, поскольку проверки регистрируются.

Есть мысли, что я делаю не так?

7
задан AFraser 24 May 2012 в 04:08
поделиться