如下: public interface WindowManager extends ViewManager {...}

时间:2022-05-09 01:45:03

WindowManager是一个接口,如下:

public interface WindowManager extends ViewManager { ... }

它的Nested Classes有三个分袂是:

WindowManager.LayoutParams WindowManager.BadTokenException WindowManager.InvalidDisplayException

这里主要看一下 WindowManager.LayoutParams 这个类

从源码中我们可以看到这个类的担任实现关系,虽然有2000+行的代码(即WindowManager这个interface 的大部分代码都是此类的),但是大部分是常量,,我的理解就是一些界说构造的参数(跟着我的不停深入,可能我也会变动我的理解)

这些参数保举大家去看   https://www.cnblogs.com/henu529/p/7061583.html 这篇博客(如果侵权请大家立马奉告,感谢!!!!)

下面给大家一个小栗子看一下:

将mParams的各个属性给了viewToast使用

params.height=WindowManager.LayoutParams.WRAP_CONTENT; params.width=WindowManager.LayoutParams.WRAP_CONTENT; //设置flag为用户不能发键盘或Button事件通报给Window 和 只要窗口可见,屏幕就一直高亮 params.flags=WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON; // |WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE; params.format=PixelFormat.TRANSLUCENT; params.type=WindowManager.LayoutParams.TYPE_PHONE; params.gravity=Gravity.LEFT+Gravity.TOP; params.setTitle("Toast"); params.x=SpUtil.getInt(AddressService.this,ConstantValue.LOCATON_X,0); params.y=SpUtil.getInt(AddressService.this,ConstantValue.LOCATON_Y,0); viewToast=View.inflate(AddressService.this,R.layout.toast_view,null); tv_toast=(TextView)viewToast.findViewById(R.id.tv_toast); mWindowManager.addView(viewToast, mParams);

WindowManager的简单了解

标签:

原文地点:https://www.cnblogs.com/zzl521/p/8949833.html