媒体播放器从UIWebView打开时通知?

时间:2011-06-19 18:58:22

标签: iphone user-controls uiwebview notifications media-player

我的应用中有一个UIViewController,其中包含UIWebViewUIWebView是固定大小的,并配置为打开新UIViewController(浏览器)中的任何链接。这很有效,但是当我尝试在网络视图中点击YouTube或Vimeo等视频时,它会在视图控制器顶部打开。这通常不是问题,但我有一个重叠的视图,需要在发生这种情况时让消息移开。

当媒体播放器弹出UIWebView时,是否有通知或任何其他方式我的视图控制器会收到通知?我真的需要这个更好地工作,因为它现在的方式真的很难看。

谢谢!

1 个答案:

答案 0 :(得分:21)

来自:http://www.alexcurylo.com/blog/2009/08/24/snippet-playing-youtube-videos/

不幸的是,没有任何直接控制或加载,进度,退出等通知。但是,您可以根据应用程序的窗口状态获得一些间接通知:添加到视图控制器中

[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(windowNowVisible:)
name:UIWindowDidBecomeVisibleNotification
object:self.view.window
];

[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(windowNowHidden:)
name:UIWindowDidBecomeHiddenNotification
object:self.view.window
];

在YouTube窗口显示并分别离开时调用这些内容。

- (void)windowNowVisible:(NSNotification *)notification
{
   NSLog(@"Youtube/ Media window appears");
}


- (void)windowNowHidden:(NSNotification *)notification 
{
   NSLog(@"Youtube/ Media window disappears."); 
}

嘿,如果您只是通过通知要求,那就很好!