如何创建一个可以覆盖主屏幕的透明活动,但是当按下主页或后退按钮时不会被解除?

mar*_*k_w 10 android android-dialog android-activity

在我的应用程序中,我希望显示一个始终可见,半透明的状态,但我很难弄清楚它是如何完成的.

Facebook Messenger和我见过的一些其他应用程序就是这样做的,所以我知道它是可能的.他们使用SYSTEM_ALERT_WINDOW权限来显示一个大致透明的活动或对话框'always-on-top'.

但我不明白的是他们如何制作它以便在按下后退或主页按钮时它们不会关闭?换句话说,他们似乎根本不像活动,但我不知道他们还能做什么?

这里的任何帮助将非常感谢:-)

Mee*_*nal 15

您可以借助于创建透明活动

  1. 使用,使xml文件中的布局背景透明

    机器人:背景="@机器人:彩色/透明"

  2. 此外,使清单文件中的主题对该特定活动透明

  3. 对于背面按下覆盖onBackPressed()方法并删除super.onBackPressed()

    @Override
     public void onBackPressed()
      {
        // TODO Auto-generated method stub
      }
    
    Run Code Online (Sandbox Code Playgroud)