如何向MPMovieplayerController的控制栏添加新的控件,该控件会随着控制栏消失而消失,出现而出现
或者是如何判断控制栏是显示还是隐藏

解决方案 »

  1.   

    正好我最近在做这个。
    可以对它的moviePlayer.view遍历subviews,遍历到第三级有个MPFullscreenOverlay,这个就是当你点击播放界面时的出现的悬浮层,遍历到第四级有一个subview就是MPTransparentControls这个类,这个就是快退/播放/快进的那个面板,你可以对这个view进行addSubview。
    至于判断这个面板的显隐,可以对MPFullscreenOverlay的alpha属性用KVO进行跟踪。
      

  2.   

    太感谢了,我这就去试试,这个问题困扰好几天了。
    如果按您说的能够判断出面板的隐藏,实际上就直接可以movieplayer.view直接addsubview了,另外我看苹果的文档上面,moviePlayer有个backgroundview,文档上说对这个backgroudview加subview可以实现custom view ,可我没研究出来。
      

  3.   

    朋友有demo吗? 能分享下吗?
      

  4.   

    从一个视图控制器或者视图中找需要的view,看下面的地址:https://github.com/cxsjabc/iphone-common-codes-ccteam/tree/master/CCFC/files/CCUIView.m// 获取视图的子视图(包括子视图的子视图)中属于指定类型或其子类视图的视图指针数组
    - (void)getSubViewIsKindOf:(NSString *)viewStr array:(NSMutableArray *)outArray;- (void)getSubViewIsKindOf:(NSString *)viewStr 
     array:(NSMutableArray *)outArray 
       maxSize:(int)maxSize;
    // 获取视图的子视图(包括子视图的子视图)中属于指定类型或其子类视图的视图指针数组
    - (void)getSubViewIsMemberOf:(NSString *)viewStr array:(NSMutableArray *)outArray;- (void)getSubViewIsMemberOf:(NSString *)viewStr 
       array:(NSMutableArray *)outArray 
     maxSize:(int)maxSize;