gpt4 book ai didi

Android 应用范围 View 覆盖 (HUD)

转载 作者:太空宇宙 更新时间:2023-11-03 10:55:51 25 4
gpt4 key购买 nike

我想覆盖整个应用程序的 View ,包括所有 Activity 。将其视为我应用程序上的 HUD(平视显示器)。该应用程序有多个 Activity ,包括选项卡 Activity ,并且 HUD 不以任何方式与用户交互,它只是显示信息,同时让用户像往常一样与应用程序交互。我想要这个 HUD 用于调试目的,这样我(和其他人)就可以在手机未连接到调试机器(现场测试)时监控应用程序 Activity 和状态。

如何添加这样的 View ?

我试过像这样使用 WindowManager.addView():

        WindowManager.LayoutParams lp = new WindowManager.LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT,
WindowManager.LayoutParams.TYPE_APPLICATION,
WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
| WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSLUCENT);
windowManager.addView(hudView, lp);

但是当我启动新 Activity 时,HUD 似乎并没有持续存在于前台,它只是消失了。

最佳答案

我知道这是一个老问题,但我想我还是会回答,因为这对我有帮助。我试图让 HUD 在 openGL 游戏中运行,这非常适合。

因为您已经使用窗口管理器显示了 HUD,您需要做的就是在每个 Activity 的 中调用 windowManager.addView(hudView, lp); >onResume() 方法。虽然不确定内存影响是什么(即当窗口管理器在切换 Activity 时将其从屏幕上移除时 View 是否被处理),但至少它会在整个应用程序中保持 HUD。

关于Android 应用范围 View 覆盖 (HUD),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4881597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com