【问题标题】:Add Custom Controls to MoviePlayer in iPhone 3.0 SDK在 iPhone 3.0 SDK 中为 MoviePlayer 添加自定义控件
【发布时间】:2009-08-06 18:08:21
【问题描述】:

我想像这个提问者一样向 mediaPlayer 控件视图添加自定义控件:

Add Custom Controls to MoviePlayer

但是,上述问题中发布的解决方案在 3.0.0 中已折旧。有人知道使用新 SDK 的方法吗?

到目前为止,我已经在moviePlayer 视图中添加了一个overlayView,并且可以在触摸时显示我自己的控件,但我似乎无法将触摸传递给moviePlayer 视图以使其显示本机控件。

我一直在使用 touchesBegan 和 touchesEnded 无济于事。任何帮助表示赞赏。

【问题讨论】:

    标签: iphone iphone-sdk-3.0 media-player


    【解决方案1】:

    【讨论】:

    • 谢谢丹尼尔,但我已经广泛研究了那个项目,它并没有像我想要的那样显示自定义控件。正如提问者在我发布的链接中所问的那样,我想向媒体播放器添加控件,就像在 Youtube 应用程序中一样,当用户触摸屏幕时(即在 Prev/Play/Next 旁边)出现本机控件。您链接到的 MoviePlayer 项目肯定不会这样做。
    • 电影播放器​​显示您可以在屏幕上添加控件,具体由您实现,您可以在电影播放器​​中隐藏默认控件并将自己的控件放在那里,就像把2个按钮放在那里你可以使用相同的方法来添加你想要的控件...
    • 所以,您建议最简单的方法是重新实现滚动位置指示器、音量滑块、播放/下一个/上一个等...以及我自己的自定义控件?
    • 但您不必这样做,您可以将自定义控件放在视频顶部,不幸的是您无法访问当前在电影播放器​​上显示的栏,Apple 制作了您的 Tube 应用程序,所以他们可以访问他们想要的任何东西,但你不能......
    • 我明白丹尼尔的观点,谢谢。但是,我希望有人可能对如何以编程方式显示本机控件提出建议。有人吗?
    【解决方案2】:

    http://blogs.oreilly.com/iphone/2008/11/the-joys-of-vertical-audio.html找到我自己的问题的答案

    也就是说,我正在使用:

    id internal;
    object_getInstanceVariable( mVideoPlayer, "_internal", (void*)&internal);
    id videoViewController;
    object_getInstanceVariable(internal, "_videoViewController", (void*)&videoViewController);
    id vvController = videoViewController;
    

    那我可以做:

    [[vvController _overlayView] addSubview:controlImage];
    

    它仍然很老套,但希望这对其他人有帮助...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-04
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多