MPMoviePlayerController 关闭后顶部状态栏消失

2024-01-04

我的 iPhone 应用程序遇到一个有趣的小问题。我有一个带有表格的视图,每个单元格在单击时全屏播放视频,然后当您按完成时,视频停止并返回表格视图。唯一的问题是,当您在视频加载的前 2 或 3 秒内按“完成”时,当视图返回到表格视图时,屏幕顶部的指示时间和电池电量等的栏不再显示在那里,它只是一个空白。但是,如果您在前几秒钟后按“完成”,那么当您返回表视图时,一切都绝对没问题!我完全不知道为什么会发生这种情况,我在互联网上找到的唯一的东西是这个,这是一个与我几乎完全相同的问题的人:

http://www.iphonedevsdk.com/forum/iphone-sdk-development/53020-disappearing-status-bar.html http://www.iphonedevsdk.com/forum/iphone-sdk-development/53020-disappearing-status-bar.html

这导致我尝试使用:

[UIApplication sharedApplication].statusBarHidden = NO;

然而这也无济于事。

当他们点击视频时执行的代码:

NSString *path = [[NSBundle mainBundle] pathForResource:currentTitle ofType:@"m4v"];
NSURL *url = [NSURL fileURLWithPath:path];
movieController = [[MPMoviePlayerController alloc] initWithContentURL:url];
[movieController setControlStyle:MPMovieControlStyleFullscreen];
[movieController setFullscreen:YES];
movieController.view.frame = self.view.bounds;
[self.view addSubview:movieController.view];

[[NSNotificationCenter defaultCenter]  addObserver:self selector:@selector(playbackFinished:) name:MPMoviePlayerPlaybackDidFinishNotification object:nil];

当视频完成或用户单击“完成”时执行的代码是:

NSLog(@"movieController moviePlayBackDidFinish");
[[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:nil];

[movieController setFullscreen:NO animated:NO];
[movieController.view removeFromSuperview];

[movieController release];

LiveEventsView *liveEventsView = [[LiveEventsView alloc] initWithNibName:@"LiveEventsView" bundle:nil];
UIView *currentView = self.view;
UIView *theWindow = [currentView superview];
UIView *newView = liveEventsView.view;
newView.frame = CGRectMake(0, 20, 320, 460);
[currentView removeFromSuperview];
[theWindow addSubview:newView];
[UIApplication sharedApplication].statusBarHidden = NO;

如果有人能阐明这种情况,我将非常感激,因为这非常令人沮丧!

Thanks,

Matt


也许视频视图消失时的动画导致状态栏动画出现计时问题。

尝试将 statusBarHidden = NO 调用延迟几秒钟。

NSInteger delay = 3;

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, delay * NSEC_PER_SEC), dispatch_get_current_queue(), ^{
[UIApplication sharedApplication].statusBarHidden = NO;
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MPMoviePlayerController 关闭后顶部状态栏消失 的相关文章

随机推荐

  • 为什么我使用=(单个等于)的相等比较不能正常工作? [复制]

    这个问题在这里已经有答案了 我正在尝试检查字符串是否为空 小于或等于 9 位数字或最多 10 位数字 但它始终遵循else if str length lt 9 if str console log The string cannot be
  • 如何像 Wildfireapp 和其他人一样通过 Graph API 动态注册 Facebook 应用程序?

    我正在尝试创建一个抽奖应用程序 我正在尝试复制wildfire http wildfireapp com 但我无法像他们那样动态创建 Facebook 应用程序 我检查了他们正在使用图形 api 在前端显示 但图形 api 中没有可用的方法
  • 如何检索 MongoDB 中对象内的不同键

    我在 MongoDB 中有这个 id ObjectId 58fb35531eb5df245d5d434f name d1 html indexation Citroen 1 color 1 Marca 1 rojo 1 id ObjectI
  • 图表:带状线和曲线交点

    我在没有很多数据点的正弦曲线类型图中添加了一条水平带状线 有没有办法找到x坐标交点 您可以通过分析来解决它 即如果您的数据是从公式导出的 您可以使用数学来求解交集 或者你可以在以下方面的帮助下得到一个近似值GDI 正如您发现使用DataPo
  • UITableView中如何设置表头的高度?

    我已经浏览了有关 UITableView 类和委托参考的 Apple 文档 但找不到显式设置表头高度的方法 我使用以下委托设置表格单元格高度 CGFloat tableView UITableView tableView heightFor
  • 具有多个字段的 LINQ OrderBy

    我有一个列表 需要按两个字段排序 我尝试过在 LINQ 中使用 OrderBy 但这只允许我指定一个字段 我正在寻找要按第一个字段排序的列表 然后如果第一个字段中有任何重复项 则按第二个字段排序 例如 我希望结果看起来像这样 按姓氏然后名字
  • 每个 React 类方法的“函数缺少返回类型”

    我的 Typescript 项目中有一个有状态的 React 组件 我使用 ESLint 来检查它 typescript eslint parser and typescript eslint eslint plugin 我已启用该规则 t
  • setup.py/setup.cfg 安装所有附加功能

    我在 setup cfg 中寻找 继承 其他附加功能的可能性 如下所示 options extras require all
  • .Net 的 Prolog 编译器

    任何人都可以推荐一个用于 Net 的 Prolog 编译器吗 我在网上搜索到的那些似乎已经好几年没有更新了 Thanks Shiraz 在这篇文章中他们推荐P http homepages inf ed ac uk stg research
  • AdRequest.Builder 无法解析为类型

    我正在将 AdMob 合并到我的应用程序中 我已按照开发人员页面中的步骤进行操作 然而 AdRequest Builder 带有红色下划线 它表示 AdRequest 无法解析为类型 and AdRequest Builder 无法解析为类
  • 程序如何在内存中运行以及操作系统处理内存的方式

    我不清楚进程执行时的内存管理 在运行时 Here is a diagram 我不清楚图像中的以下内容 1 该图像所指的堆栈是什么 2 什么是内存映射段 它指的是文件映射 3 堆与进程有什么关系 堆是仅在进程中处理还是堆是由操作系统内核维护的
  • $(位置).attr('href');不工作

    我不知道为什么 但我对这段代码有问题 横幅显示在每个页面上 尽管它指定了属性 location attr href 您可以帮助我吗 div div class bottom content a href http www cliente o
  • 可存储空数据声明

    我正在尝试为 C 库创建 Haskell 包装器 底层结构太复杂 无法表达为显式类型 而且除了在 C 函数之间传递之外 我实际上并不使用它们 所以我使用EmptyDataDecls让 GHC 帮我解决这个问题 我需要的是一个指向这些数据类型
  • 在 Matplotlib/Python 中更改极坐标图的轴选项

    我在更改 Matplotlib 中的轴标签时遇到问题 我想更改极坐标图中的径向轴选项 基本上 我正在计算圆柱体的变形 这只不过是半径偏离原始 完美圆形 圆柱体的程度 由于拉力和压力 一些变形值为负值 而另一些则为正值 我正在寻找一种方法以图
  • CSS:如何伪造 :hover 状态?

    在这里 我有几个 div 当鼠标悬停在它们上时 会有过渡效果 如左内角 我想首先假装悬停 例如 首先让左外角div处于 hover状态 而没有用户实际的hover动作 然后 当用户真正将鼠标悬停在其他 div 上时 假悬停状态就会取消 对于
  • 如何在 Pl/SQl 中使用批量收集和插入

    我想从一个表中获取大约 600 万行 并将它们全部插入到另一个表中 我该如何使用BULK COLLECT and FORALL declare define array type of the new table TYPE new tabl
  • xUnit 与 Jenkins:如何在构建控制台输出中显示颜色?

    我成功设置了 CasperJS 测试套件 并通过这种方式导出到 xUnit XML 文件 casperjs test googletesting js xunit log xml 我成功地通过 Jenkins 自动化了这些测试 这要归功于x
  • 如何在Jenkinsfile中使用jenkins版本号插件?

    在安装了 版本号插件 的 Jenkinsfile 中尝试此步骤 stage Build echo Building TAG BUILD DATE FORMATTED yyyyMMdd develop BUILDS TODAY sh dock
  • shell 中的浮点舍入

    printf 0 2f n 41 495 41 49 printf 0 2f n 41 485 41 49 printf 0 2f n 41 475 41 47 printf 0 2f n 41 465 41 47 printf 0 2f
  • MPMoviePlayerController 关闭后顶部状态栏消失

    我的 iPhone 应用程序遇到一个有趣的小问题 我有一个带有表格的视图 每个单元格在单击时全屏播放视频 然后当您按完成时 视频停止并返回表格视图 唯一的问题是 当您在视频加载的前 2 或 3 秒内按 完成 时 当视图返回到表格视图时 屏幕