繁体   English   中英

Android:直到屏幕状态更改才出现addContentView()

[英]Android: addContentView() doesn't appear until screen state changes

我正在在当前正在运行的活动之上添加视频。 我设法使用以下方法实现了这一点:

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本机扩展。 AIR应用程序是主要活动,尽管我无权访问布局或类似内容。 this.activity是从扩展上下文中获取的主要活动(AIR和Java应用程序如何通信)。 我需要将视频显示在我的应用程序顶部,这已完成。

您没有提供包装代码的类,但是我想它是您主要活动中的一个视图。

this.activity.addContentView(surface, params); 表示您在特定视图上时向活动中添加了表面视图。 这只会将表面的引用添加到活动的视图层次结构中,并且仅在 重新加载活动(重新创建,重新启动或恢复) 才会更新

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM