gpt4 book ai didi

MPMoviePlayerController 可以退出全屏,但顶部栏不见了

转载 作者:行者123 更新时间:2023-12-04 08:43:31 26 4
gpt4 key购买 nike

我正在使用 MPMoviePlayerController 在 iPad 上播放电影。

当用户将设备旋转到横向时,我将其设置为全屏

如果用户随后点击“退出全屏”或“完成”,电影将动画回到其小帧( native 行为),但是 - 顶部栏(导航栏)不见了。此外,可见 View 已经向上移动,位于状态栏的后面和之外。

请注意,我根本没有触及顶部栏。我没有手动隐藏它。

我尝试通过将 setNavigationBarHidden:animated 发送到当前 View Controller 的导航 Controller 以及 tabbarcontroller 的导航 Controller 来重新获得导航栏。我将此作为对 MPMoviePlayerDidExitFullscreenNotification(触发)的响应。没有效果。但是,如果我们旋转回纵向,它会立即返回。

我的问题是:

  • 为什么当用户退出全屏时顶部栏不返回?
  • 我们怎样才能恢复顶部栏?

最好的问候,蒂莫

附言我将继续试验 this 中描述的怪异现象。所以发帖。可能相关。

最佳答案

由于这似乎是 Apple SDK 中的错误(请阅读下面的帖子脚本),我已经解决了它。

当您收到 MPMoviePlayerDidExitFullscreenNotification 时,请执行以下步骤:

  1. 发送 [setNavigationBarHidden:YES animated:NO] 到导航栏。
  2. 发送 [setNavigationBarHidden:NO animated:YES] 到导航栏。

会有一个小故障,即条形动画向后退。不过,这比您的栏消失和用户惊讶地离开要好得多!

animated:YES 似乎有必要使栏(重新)设置其位置(而不仅仅是其可见性)。

您可以尝试使用 -performSelector:withObject:afterDelay: 使其在 0 或 0.1 秒延迟后立即显示(animated:NO)。您可能仍然需要先启动动画,否则栏不会调整其位置。

干杯,蒂莫

附言这似乎是 SDK 中的错误。例如,如果您运行 TED iPad 应用程序,您也可以在那里复制它。这些步骤大致如下:播放视频、双指缩放至全屏、将 iPad 旋转至横向、按完成。稍微试验一下,您应该会看到导航栏消失了。

关于MPMoviePlayerController 可以退出全屏,但顶部栏不见了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4541816/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com