2

我正在使用自定义MediaControllerVideoView(都使用 99% 的原始 android 代码)构建一个应用程序来显示我的视频。当活动处于横向时,我将操作栏(使用 actionbarsherlock 4.2.0)设置为覆盖VideoViewyoutube 应用程序中的内容。

当您单击视频视图时,媒体控制器会在可见和不可见之间交替,但是当它可见时,您可以使用按钮来控制视频,但是如果我触摸操作栏项目,它就不起作用,只是隐藏了媒体控制器,因为他拦截了触摸事件。

我查看了代码MediaController并意识到他正在创建一个填充整个屏幕的窗口。所以我修复了这个问题并将窗口设置为恰好在操作栏下方开始,但即使在窗口上设置了我的触摸调用仍然被拦截,WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL因此它不会阻止外部触摸事件(因为操作栏理论上在 MediaController 之外窗户)。

知道我做错了什么吗?最坏的情况我将不得不使用像这个线程这样的两个解决方案之一:删除窗口并使用布局膨胀或根本不使用 MediaController

4

0 回答 0