当网络视图视频在ios8上变为全屏时检测

问题描述 投票:14回答:5

我有一个应用程序,用户可以在其中打开UIWebview的视频,包括Youtube的视频。在iOS7中,当它开始播放或全屏显示时,我能够收到通知,这对于我向用户显示某些选项并修改界面非常重要。

我曾经用这个:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(VideoExitFullScreen:) name:@"UIMoviePlayerControllerDidExitFullscreenNotification" object:nil];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(VideoEnterFullScreen:) name:@"UIMoviePlayerControllerDidEnterFullscreenNotification" object:nil];

但是,自iOS8起,我无法实现这一目标。就像通知不再从UIWebview视频中触发一样。但是,正如我测试过的那样,它仍然是由非Webview的普通视频触发的。

有什么改变的想法吗?

我有一个应用程序,用户可以在其中打开UIWebview的视频,包括Youtube的视频。在iOS7中,当它开始播放或全屏显示时,我可以收到通知,这对于...

ios video uiwebview youtube mpmovieplayercontroller
5个回答
24
投票

这是我为此找到的解决方法。


5
投票

Swift 5.1:


3
投票

更新Swift 4.2,iOS 12.1和WKWebView:


1
投票

@@ NorthBlast的答案非常适用于检测出现在保存UIWindowUIViewController顶部的任何UIWebView。不幸的是,很难过滤UIWindow的类型(因为,嗯...您真的不知道它是视频还是其他类型的窗口)。


0
投票

快速:

© www.soinside.com 2019 - 2024. All rights reserved.