其实这个实现很简单!就是在WindowManager中添加一个显示view
floatView = new FloatView(getApplicationContext());
floatView.setOnClickListener(this);
floatView.setImageResource(R.drawable.ic_launcher);
windowManager = (WindowManager) getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
windowManagerParams = ((FloatApplication) getApplication()).getWindowParams();
windowManagerParams.type = LayoutParams.TYPE_PHONE;
windowManagerParams.format = PixelFormat.RGBA_8888;
windowManagerParams.flags = LayoutParams.FLAG_NOT_TOUCH_MODAL
| LayoutParams.FLAG_NOT_FOCUSABLE;
windowManagerParams.gravity = Gravity.LEFT | Gravity.TOP;
windowManagerParams.x = 0;
windowManagerParams.y = 0;
windowManagerParams.width = LayoutParams.WRAP_CONTENT;
windowManagerParams.height = LayoutParams.WRAP_CONTENT;
windowManager.addView(floatView, windowManagerParams);
本文介绍了一种简单的实现悬浮窗口的方法。通过使用WindowManager服务,可以将一个自定义的View悬浮于应用程序之上。该方法涉及设置悬浮窗的位置、大小及显示属性。
421

被折叠的 条评论
为什么被折叠?



