开发过程中,老板要求手机播放视频时能够全屏播放的时候自动横屏,以增加用户体验,于是就用到了伟大的度娘,下面是给我帮助的帖子链接,同事感谢楼主,但是在使用过程中遇到一个问题,我就稍微改了一下,这个要看每个人的实际代码。原帖链接:http://www.cocoachina.com/bbs/read.php?tid=456927
看完以后,作为菜鸟,我也就直接复制粘贴了,但是运行时遇到一个奇葩问题:点击播放第一个视频,全屏,横屏,ok,没问题,但是点击第二个就不能自动横屏了。经过测试,奇数次点击可以横屏,偶数次就不能横屏,那么问题来了,有规律!!有规律就简单了,废话这么多,直接上代码
下面是我自己用到的代码
1、在创建完视屏播放器的时候注册两个系统通知
//将要进入全屏的通知
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(willEnterFullscreenScreen:)name:MPMoviePlayerWillEnterFullscreenNotificationobject:nil];
//将要推出全屏的通知
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(willExitFullscreenScreen:)name:MPMoviePlayerWillExitFullscreenNotificationobject:nil];
2、实现通知方法
//将要进入全屏
-(void)willEnterFullscreenScreen:(NSNotification*)notification{
[[UIDevicecurrentDevice]setValue:[NSNumbernumberWithInteger:UIInterfaceOrientationLandscapeRight]forKey:@"orientation"];
}
//将要推出全屏
-(void)willExitFullscreenScreen:(NSNotification*)notification{
[[UIDevicecurrentDevice]setValue:[NSNumbernumberWithInteger:UIInterfaceOrientationPortrait]forKey:@"orientation"];
}
3、搞定!是不是很简单,也不需要释放、移除什么的,其实我也就是删除了判断(虽然我不知道判断是做什么用的,本人菜鸟一枚),然后就实现了自己想要的效果
网友评论