gpt4 book ai didi

android - 如何显示全屏 TYPE_SYSTEM_ALERT 窗口?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:55:16 26 4
gpt4 key购买 nike

我目前很难在全屏模式下显示 TYPE_SYSTEM_ALERT 窗口。我想这样做是为了在状态栏顶部有一个从服务创建的覆盖 View ,但不隐藏它。

但是,将 FLAG_FULLSCREEN 标志放在我正在创建的窗口的布局参数中似乎不起作用。我找到了 STATUS_BAR 和 EXPAND_STATUS_BAR 权限,但找不到如何使用它们。

这是布局参数:

    WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_FULLSCREEN,
PixelFormat.TRANSLUCENT);

params.gravity = Gravity.RIGHT | Gravity.TOP;

mWindowManager.addView(mOverlayView, params);

有什么想法吗?

谢谢

最佳答案

我在尝试做其他事情时找到了解决方案!

为了让 TYPE_SYSTEM_ALERT 窗口位于所有其他窗口之上和状态栏之上,您必须添加 FLAG_LAYOUT_IN_SCREEN 标志而不是 FLAG_LAYOUT_FULLSCREEN 标志:

WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
PixelFormat.TRANSLUCENT);

mWindowManager.addView(mOverlayView, params);

关于android - 如何显示全屏 TYPE_SYSTEM_ALERT 窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6371432/

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