【问题标题】:MPMoviePlayerController fullscreen in landscape mode in a portrait projectMPMoviePlayerController 在纵向项目中以横向模式全屏
【发布时间】:2013-10-17 18:55:43
【问题描述】:

在我的应用中,我在项目设置中只选择了纵向模式:

我就是这样使用它的:

player = [[MPMoviePlayerController alloc] init];
[player setContentURL:videoURL];
[player play];

但是当我使用MPMoviePlayerController 全屏显示视频并且我尝试旋转它、不旋转并停留在portrait 时,有一种简单的方法无需在项目中启用landscape 模式设置,以全屏激活landscape

【问题讨论】:

  • 我认为你应该尝试使用 customMoviePlayer

标签: iphone ios mpmovieplayercontroller landscape-portrait


【解决方案1】:

你有两个选择:

  1. 在项目设置中启用横向模式并为您的视图控制器覆盖 supportedInterfaceOrientations
  2. 在您的应用委托中,添加application:supportedInterfaceOrientationsForWindow: 方法,并在播放电影时确保返回UIInterfaceOrientationMaskAllButUpsideDown

【讨论】:

  • 你能为选项 2 举个例子吗?播放电影时我必须更改应用程序委托中的方法?还是在视图控制器中?
  • 应用委托。在您的应用委托中,您可以侦听 MPMoviePlayerWillEnterFullscreenNotification 以启用旋转到横向并侦听 MPMoviePlayerWillExitFullscreenNotification 以禁用它。
  • 谢谢盖伊!这是完美的解决方案。
  • @GuyKogus 我正在尝试快速实现此解决方案,当我尝试将NSNotificationCenter.defaultCenter().addObserver(self, selector: "supportedInterfaceOrientationsForWindow:", name: MPMoviePlayerDidEnterFullscreenNotification, object: nil) 添加到 didFinishLaunchingWithOptions 时,它会抛出未解析的标识符 MPMoviePlayerDidEnterFullscreenNotification。你能帮我解决这个问题吗?
  • 您是否在文件顶部调用了import MediaPlayer
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多