I have a AVPlayer used with an AVAsset for playing a video.
I added some controls like play, stop, forward etc...
But how can I switch to fullscreen with a button? I don't want to use MPMoviePlayerController because I don't know how to synchronize starttime. But how can I simply "expand" current playerView to use fullScreen?
Thanks.
If AvPlayer has same frame as view or window
If AvPlayer has less frame of view or window
Create on protocal to parent to change frame of player to window frame when user presses landscape button
Rotate a view by pi/2.
create one method and use below code.
-(void)enlarge
{
if(!_isLandscapeMode)
{
[self.landscapeDelegate changeFrameForLandscapeMode:YES];
[_landscapeMode setImage:[UIImage imageNamed:IMAGE_NAME_PORTRAIT_MODE] forState:UIControlStateNormal];
_isLandscapeMode=YES;
self.transform = CGAffineTransformMakeRotation(M_PI_2);
}
else
{
[self.landscapeDelegate changeFrameForLandscapeMode:NO];
_isLandscapeMode=NO;
[_landscapeMode setImage:[UIImage imageNamed:IMAGE_NAME_LANDSCAPE_MODE] forState:UIControlStateNormal];
self.transform = CGAffineTransformMakeRotation(0);
}
}
Lets say you have a UIViewController that has a UIView fullscreen
You need to use AVPlayerLayer
var player = AVPlayer(playerItem: AVPlayerItem(asset: asset))
var layer = AVPlayerLayer(player: player)
self.view.layer.addSublayer(layer)
layer.frame = CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With