我正在在当前正在运行的活动之上添加视频。我已经设法使用以下方法实现了这一点:
this.surface = new SurfaceView(getApplicationContext());
this.surface.getHolder().addCallback(this);
WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.height = 500;
params.width = 500;
this.activity.addContentView(surface, params);
然后我将 MediaPlayer 附加到从 this.surface 获得的 SurfaceHolder。它完全按照我的需要工作,除了一件事:SurfaceView 直到屏幕状态更改后才会出现在屏幕上。我必须关闭屏幕才能将视图添加到活动中。之后,一切都按预期工作。
有人知道为什么会这样吗?
编辑:从对 Kelvin Trinh 的评论中添加了更多信息。
它是使用原生视频组件的 AIR Native Extension。AIR 应用程序充当主要活动,尽管我无法访问布局或类似的东西。this.activity 是主要活动,取自扩展上下文(AIR 和 Java 应用程序如何通信)。我需要视频显示在我的应用程序之上,我已经完成了。