2015-07-13 35 views
5

Bu yüzden, storyboard'umda kapsayıcı görünümünün içinde yer alan bu AVPlayerViewController var. Bu oyuncu vide denetleyicisine prepareForSegue kullanarak erişiyorum. Ancak, player özelliği üzerinde herhangi bir özellik ayarlamaya çalıştığımda, Xcode bana Receiver 'AVPlayer' for class message is a forward declaration hata veriyor. AVKit .h'da doğru şekilde içe aktarılmış. Neyi yanlış yapıyorum?AVPlayer ileri sınıf bildirimi

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 
    if ([segue.identifier isEqualToString:@"videoPlayerEmbed"]) { 
     self.videoPlayerController = (AVPlayerViewController *)segue.destinationViewController; 
     self.videoPlayerController.delegate = self; 
     self.videoPlayerController.player = [[AVPlayer alloc] init]; 
    } else { 
     [super prepareForSegue:segue sender:sender]; 
    } 
} 

cevap

21

Bunu çözdüm. #import <AVKit/AVKit.h>'un AVPlayerViewController için yeterli olduğunu sanıyordum, ancak AVPlayer'u yönetmek istiyorsanız #import <AVFoundation/AVFoundation.h>'a da ihtiyacınız var.

0

Eğer AVPlayerViewController.h yani #import "AVPlayerViewController.h" ithal mı?

Bir ileri bildirim, derleyicinin bilmediği bir sınıfa mesaj göndermeye çalıştığınız yerdir.

+0

Artık 'AVPlayerViewController.h' dosyası bulunamadı 'alıyorum. – Victor

+0

@TechGenius Projenizin> Genel> Bağlantılı Çerçeve ve Kütüphanelerin AVKit.framework ve AVFoundation.framework içerdiğinden emin olun. – ammianus