我正在尝试解决这个问题,以下是情况说明:
我有一个非常基本的应用程序,其中包含一个MMDrawerController和一个内部的tableview,当点击项目时,它会链接到uitabbarcontroller。在第一个页面中,嵌入了一个YouTube UIWebView,当按下播放按钮时,会全屏播放YouTube视频。
以下是发生的情况:
1. 按下视频,全屏打开并开始播放 2. UITabBar viewWillDisappear触发 3. 根MMDrawerController viewWillAppear触发 4. 视频结束 5. 用户回到他们开始的UITabBar,一切似乎都很好,即使之前它“消失”了
现在我在两个视图的ViewWillAppears / Disappears中放置了布尔值来检查应用程序的当前状态。通常是0,1,表示表格是打开的还是uitabbarcontroller是打开的。在观看视频后,它们显示为0,0。如果我在导航上按返回键,从任何地方导航时会出现“不平衡的调用开始/结束外观转换”。
现在,如果我监听YouTube视频的开始,然后触发:
[self.navigationController popToRootViewControllerAnimated:NO];
我可以防止不平衡的调用发生,并且用户可以继续浏览应用程序。但是,他们无法观看视频,只能被扔回一个视图。
此外,在3中,我可以检查两个控制器上的0,0,然后重新启动整个应用程序。但这不是一个好的解决方案。
预期结果:
用户可以按uiwebview,观看视频,之后他们会回到他们离开的地方。如果他们在导航控制器上按返回键,则不会出现不平衡的外观转换。
我已经尝试了很多东西,例如
[self.navigationController poptoViewController:...]
从我目前所了解的情况来看,它与全屏视频加载在根控制器有关(因此它的viewWillAppear在3处触发),但之后我没有正确地“放置”回来。一些像
[self.navigationController heyTheUserIsPresentlyIn:self]
在视频消失后可以调用,将是非常好的。
非常感谢任何帮助,虽然我已经花了几个小时在这个问题上,如果我是个白痴,任何文档或书籍中的部分链接都会很有帮助。谢谢。
我有一个非常基本的应用程序,其中包含一个MMDrawerController和一个内部的tableview,当点击项目时,它会链接到uitabbarcontroller。在第一个页面中,嵌入了一个YouTube UIWebView,当按下播放按钮时,会全屏播放YouTube视频。
以下是发生的情况:
1. 按下视频,全屏打开并开始播放 2. UITabBar viewWillDisappear触发 3. 根MMDrawerController viewWillAppear触发 4. 视频结束 5. 用户回到他们开始的UITabBar,一切似乎都很好,即使之前它“消失”了
现在我在两个视图的ViewWillAppears / Disappears中放置了布尔值来检查应用程序的当前状态。通常是0,1,表示表格是打开的还是uitabbarcontroller是打开的。在观看视频后,它们显示为0,0。如果我在导航上按返回键,从任何地方导航时会出现“不平衡的调用开始/结束外观转换”。
现在,如果我监听YouTube视频的开始,然后触发:
[self.navigationController popToRootViewControllerAnimated:NO];
我可以防止不平衡的调用发生,并且用户可以继续浏览应用程序。但是,他们无法观看视频,只能被扔回一个视图。
此外,在3中,我可以检查两个控制器上的0,0,然后重新启动整个应用程序。但这不是一个好的解决方案。
预期结果:
用户可以按uiwebview,观看视频,之后他们会回到他们离开的地方。如果他们在导航控制器上按返回键,则不会出现不平衡的外观转换。
我已经尝试了很多东西,例如
[self.navigationController poptoViewController:...]
从我目前所了解的情况来看,它与全屏视频加载在根控制器有关(因此它的viewWillAppear在3处触发),但之后我没有正确地“放置”回来。一些像
[self.navigationController heyTheUserIsPresentlyIn:self]
在视频消失后可以调用,将是非常好的。
非常感谢任何帮助,虽然我已经花了几个小时在这个问题上,如果我是个白痴,任何文档或书籍中的部分链接都会很有帮助。谢谢。