WindowManager的简单使用笔记

来源:互联网 发布:djngo 使用已有数据库 编辑:程序博客网 时间:2024/05/17 01:17
WindowManager是Android应用中用来控制界面的,实在是非常好用

比如说遇到这种情况:

1、界面的特殊位置要画一个View,例如在右下角画一个消息提示窗口

2、某个View的上部覆盖另一个View,比如在LinearLayout中的View上面画另一个View,因为LinearLayout是线性排列的,所以是比较难操作的,要实现这个效果非常麻烦。


而如果使用WindowManager将会非常容易,只需三步

第一步、构造一个等待画出来的View

LayoutInflater inflater = LayoutInflater.from(this);LinearLayout llAlert = inflater.inflater(R.layout.alert,null);

第二步、设置View的位置、大小等其他参数


WindowManager.LayoutParams p = new WindowManager.LayoutParams();p.gravity = Gravity.RIGHT| Gravity.BOTTOM; //设置基准点p.x = 0;p.y = 0;p.type = WindowManager.LayoutParams.TYPE_PHONE;p.flags=WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL  |WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;  // |WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE;p.width = 100;p.height = 100;

第三部、把这个View添加到界面上

WindowManager wm = getWindowManager();wm.addView(llAlert, p);




0 0
原创粉丝点击