1.获取WindowManager对象:
WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
2.准备一个在窗口显示的View视图
View view = LayoutInflater.from(context).inflate(layoutResId,null);
//TODO 设置View里面的控件
3.创建一个WindowManager.LayoutParams对象并设置
注意://创建窗口的布局参数 使用带参构造将异常new WindowManager.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT,Window Manager.LayoutParams.MATCH_PARENT)
WindowManager.LayoutParams windowLayoutParams = new WindowManager.LayoutParams();
windowLayoutParams.width = WindowManager.LayoutParams.MATCH_PARENT;//宽度全屏宽
windowLayoutParams.height = WindowManager.LayoutParams.MATCH_PARENT;//高度全屏高
windowLayoutParams.format = PixelFormat.RGBA_8888;//设置窗口背景色透明
//给Window设置Flag 作用:状态栏透明、可以接收返回键
windowLayoutParams.flags = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE ;
4.显示 不能重复添加同一个对象
windowManager.addView(dailyTipsView, windowLayoutParams);//添加View
5.移除 如果没有添加不能移除
windowManager.removeView(dailyTipsViewHolder.view);