Ios 如何在mpmovieplayervewcontroller上添加标题并在点击时隐藏

Ios 如何在mpmovieplayervewcontroller上添加标题并在点击时隐藏,ios,cocoa-touch,mpmovieplayercontroller,mpmovieplayer,mpmoviewcontroller,Ios,Cocoa Touch,Mpmovieplayercontroller,Mpmovieplayer,Mpmoviewcontroller,我需要在mpmovieplayervewcontroller的顶部工具栏上添加一个标题,如果我正在播放视频,用户点击应该像隐藏任何其他控件一样隐藏标题 目前我正在添加一个UILabel作为moviePlayer视图的子视图。尽管这种方法在顶栏上添加了一个标题(我正在相应地设置框架),但当用户点击屏幕时,它不会隐藏标题 是否有任何直接的api/黑客可以通过它访问MPMoviePlayerViewController的顶部工具栏?我的想法是,如果我可以将标题添加为顶部工具栏的子视图,隐藏过程将由MP

我需要在mpmovieplayervewcontroller的顶部工具栏上添加一个标题,如果我正在播放视频,用户点击应该像隐藏任何其他控件一样隐藏标题

目前我正在添加一个UILabel作为moviePlayer视图的子视图。尽管这种方法在顶栏上添加了一个标题(我正在相应地设置框架),但当用户点击屏幕时,它不会隐藏标题

是否有任何直接的api/黑客可以通过它访问MPMoviePlayerViewController的顶部工具栏?我的想法是,如果我可以将标题添加为顶部工具栏的子视图,隐藏过程将由MPMoviePlayerViewController处理。有什么想法吗


提前谢谢

注意,我的答案是指
MPMoviePlayerController
,而不是
mpmovieplayervewcontroller
。我建议您直接使用它或通过其在
mpmovieplayervicewcontroller
上的引用使用它

首先,永远不要直接在MPMoviePlayerController的视图中添加任何内容。这很容易产生各种奇怪的副作用,文档中明确建议不要这样做。相反,使用其
背景视图
托管您的自定义内容,或者使用
MPMoviePlayerController
视图
(使其成为兄弟)

但是,如果用户点击或只是等待,那么让视图/标签/任何dis/与控件一起重新出现并不能解决您描述的问题

有很多方法可以做到这一点,但我担心这些方法处于灰色地带——或者换句话说,它们有可能被苹果拒绝。事实上,这不仅是一个灰色地带,而且明显违反了苹果公司的发展方针

只是,我过去在主要应用程序上使用过这个技巧,但从未被发现/拒绝

首先,您需要找到MPMoviePlayerController实例的接口视图

/**
 * This quirky hack tries to locate the interface view within the supposingly opaque MPMoviePlayerController
 * view hierachy.
 * @note This has a fat chance of breaking and/or getting rejected by Apple
 *
 * @return interface view reference or nil if none was found
 */
- (UIView *)interfaceView
{
    for (UIView *views in [self.player.view subviews])
    {
        for (UIView *subViews in [views subviews])
        {
            for (UIView *controlView in [subViews subviews])
            {
                if ([controlView isKindOfClass:NSClassFromString(@"MPInlineVideoOverlay")])
                {
                    return controlView;
                }
            }
        }
    }
    return nil;
}

UIView *interfaceView = [self interfaceView];
现在已经获得了实例,只需将视图/标签/任何内容添加到该视图中即可

[interfaceView addSubview:myAwesomeCustomView];

@Mak该链接没有帮助。仅供参考-在iOS sevenhow中将此链接更改为“MPVideoPlaybackOverlayView”如何使用MPVideoPlaybackOverlayView,有何建议?