2014-03-12 9 views
8

Ich benutze AVPlayer in meinen Apps statt MPMoviePlayerController da ich den Player als Sublayer einsetzen möchte. Allerdings brauche ich Kontrolle wie Wiedergabe, Pause, Suche und Vollbild. Wie bekomme ich diesen Knopf im AVPlayer? Dies ist, wie ich die Spieler setzen:AVPlayer Vollbild

AVURLAsset *avasset = [[AVURLAsset alloc] initWithURL:URL1 options:nil]; 

    AVPlayerItem *item = [[AVPlayerItem alloc] initWithAsset:avasset]; 
    player = [[[AVPlayer alloc] initWithPlayerItem:item]retain]; 

    playerLayer = [AVPlayerLayer playerLayerWithPlayer:player]; 
    CGSize size = self.view.bounds.size; 
    float x = size.width/2.0-187.0; 
    float y = size.height/2.0 - 125.0; 

    playerLayer.frame = CGRectMake(x, y, 474, 320); 
    [playerLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill]; 
    [self.view.layer addSublayer:playerLayer]; 
    [player play]; 

Antwort

7

Sie haben werden Ihre eigenen Tasten zur Verfügung zu stellen.

Für play und pause gibt es direkte APIs im AVPlayer.

Für den ganzen Bildschirm ... naja ... Sie wissen, wo Sie zeichnen: Sie müssen nur Ihre UIWindow und entsprechenden UIView & Schicht zu voller Größe.

Für die Suche, Sie haben Methoden wie seekToTime:

+0

Okay, see..thanks i Michael ... – user3231429

6

Für die Zukunft iOS 8 AVKit hat die AVPlayerViewController Klasse zur Verfügung, die eine AVPlayer und verfügt über die Standard-MPMoviePlayerController Klasse Kontrollen wickeln wird.

AVPlayerViewController

AVPlayerViewController * filePlayerViewController = [AVPlayerViewController alloc]; 
//Show the controls 
filePlayerViewController.showsPlaybackControls = true; 
AVPlayer * filePlayer = [AVPlayer playerWithURL:[NSURL fileURLWithPath:self.videoFile.localURL]]; 
filePlayerViewController.player = self.filePlayer;