Android 如何在浏览其他应用程序时保持图像在屏幕上

Android 如何在浏览其他应用程序时保持图像在屏幕上,android,overlay,translucency,Android,Overlay,Translucency,我正在制作一个应用程序,在屏幕上创建一个图像,在手机上创建应用程序,并且仍然可以正常使用手机功能。我想用 覆盖和活动半透明,但我不能使用手机功能。我错了,还是我遗漏了什么?有人能帮我吗? 感谢您的阅读。我想您正在寻找一个类似“facebook聊天头”的图标,它位于所有应用程序之上。对吧? 那么就在这里, 允许应用程序使用类型打开窗口 键入系统警报,显示在所有其他应用程序的顶部。很少 申请者应使用此权限;这些窗户是专门设计的 用于与用户的系统级交互 常量值:“android.permission.

我正在制作一个应用程序,在屏幕上创建一个图像,在手机上创建应用程序,并且仍然可以正常使用手机功能。我想用 覆盖和活动半透明,但我不能使用手机功能。我错了,还是我遗漏了什么?有人能帮我吗?
感谢您的阅读。

我想您正在寻找一个类似“facebook聊天头”的图标,它位于所有应用程序之上。对吧?

那么就在这里,

允许应用程序使用类型打开窗口 键入系统警报,显示在所有其他应用程序的顶部。很少 申请者应使用此权限;这些窗户是专门设计的 用于与用户的系统级交互

常量值:“android.permission.SYSTEM\u ALERT\u窗口”

示例代码:

public class ChatHeadService extends Service {

  private WindowManager windowManager;
  private ImageView chatHead;

  @Override public IBinder onBind(Intent intent) {
    // Not used
    return null;
  }

  @Override public void onCreate() {
    super.onCreate();

    windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);

    chatHead = new ImageView(this);
    chatHead.setImageResource(R.drawable.android_head);

    WindowManager.LayoutParams params = new WindowManager.LayoutParams(
        WindowManager.LayoutParams.WRAP_CONTENT,
        WindowManager.LayoutParams.WRAP_CONTENT,
        WindowManager.LayoutParams.TYPE_PHONE,
        WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
        PixelFormat.TRANSLUCENT);

    params.gravity = Gravity.TOP | Gravity.LEFT;
    params.x = 0;
    params.y = 100;

    windowManager.addView(chatHead, params);
  }

  @Override
  public void onDestroy() {
    super.onDestroy();
    if (chatHead != null) windowManager.removeView(chatHead);
  }
}
不要忘记以某种方式启动服务:

完整代码:


请查看此帖子:

非常感谢您的回答,但我想将像壁纸fullscreenmark这样的完整图像设置为“接受”。如果它有帮助,它将帮助其他人找到这个问题,以了解它正在工作或nt。我的初衷是在屏幕上制作壁纸,并且位于像theme这样的应用程序上。我为这个误会道歉
startService(new Intent(context, ChatHeadService.class));