2016-08-05 2 views
0

에서 온다. 전체 화면 모드에서 문제가 있습니다. 비디오 플레이어는 왼쪽 상단에서옵니다. 이상하게 보입니다.AVPlayerview 내가 비디오를 재생할 AVPlayer를 사용하고 왼쪽 상단

NSString *filePath = [self.video_Array objectAtIndex:index]; 
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:filePath ofType: nil]; 
url = [[NSURL alloc] initFileURLWithPath: soundFilePath]; 
currentItem = [AVPlayerItem playerItemWithURL:url]; 
_playerViewController = [[AVPlayerViewController alloc] init]; 
_playerViewController.videoGravity = AVLayerVideoGravityResize; 
_playerViewController.view.frame = self.view.bounds; 
_playerViewController.showsPlaybackControls = NO; 
_video=[AVPlayer playerWithURL:url]; 
_video = [AVPlayer playerWithPlayerItem:currentItem]; 
_playerViewController.player = _video; 
[_playerViewController.player play]; 
[self.view addSubview:_playerViewController.view]; 
+1

스크린 샷 또는 관련 코드 항상 –

+0

검사에서 위의 코드 – Bharathi

+0

나를 위해 비디오 중력 – Shubhank

답변

0

당신은 AVPlayerViewController 전체 화면 비디오를

AVPlayerViewController+Fullscreen.h 

#import <AVKit/AVKit.h> 

@interface AVPlayerViewController (Fullscreen) 

-(void)goFullscreen; 

@end 

AVPlayerViewController + Fullscreen.m을 재생하는 데 사용할 수있는

#import "AVPlayerViewController+Fullscreen.h" 

@implementation AVPlayerViewController (Fullscreen) 



-(void)goFullscreen { 
     self.modalPresentationStyle = UIModalPresentationOverFullScreen; 
     [self presentViewController:self animated:YES completion:nil]; 
    } 

@end 
1

내 응용 프로그램에서 잘 작동 내 코드를 참조하십시오

-(void)videoPlayer:(NSString *)filePath{ 

    playerViewController = [[AVPlayerViewController alloc] init]; 
    self.viewPlayerContainer.frame = CGRectMake(0, 74, self.view.bounds.size.width, self.view.bounds.size.width); 

    NSURL *url = [NSURL fileURLWithPath:filePath]; 

    AVURLAsset *asset = [AVURLAsset assetWithURL: url]; 
    AVPlayerItem *item = [AVPlayerItem playerItemWithAsset: asset]; 

    AVPlayer * player = [[AVPlayer alloc] initWithPlayerItem: item]; 
    playerViewController.player = player; 
    playerViewController.videoGravity = AVLayerVideoGravityResizeAspectFill; 
    [playerViewController.view setFrame:CGRectMake(0, 0, self.viewPlayerContainer.bounds.size.width, self.viewPlayerContainer.bounds.size.height)]; 
    [playerViewController addObserver:self forKeyPath:@"videoBounds" options:NSKeyValueObservingOptionNew context:nil]; 

    playerViewController.showsPlaybackControls = YES; 

    [self.viewPlayerContainer addSubview:playerViewController.view]; 

    [player play]; 
} 
관련 문제