Android WMS——WM窗口管理(五)

一、WindowManager

        WindowManager 所提供的功能很简单,常用的只有三个方法,即添加 View,更新 View,和删除 View。这三个方法定义在 ViewManager 接口中,而 WindowManager 继承了 ViewManager。

1、ViewManager

源码位置:/frameworks/base/core/java/android/view/ViewManager.java

public interface ViewManager{
    public void addView(View view, ViewGroup.LayoutParams params);
    public void updateViewLayout(View view, ViewGroup.LayoutParams params);
    public void removeView(View view);
}

2、WindowManager

源码位置:/frameworks/base/core/java/android/view/WindowManager.java

public interface WindowManager extends ViewManager {
}

        由此看来 WindowManager 操作 Window 的过程更像是在操作 Window 中的 View,对于那种可以拖动的 Window 效果其实是很好实现,只需要修改 LayoutParams 中的 x、y 值就可以改变 Window 的位置。首先给 View 设置 onTouchListener,然后在 onTouch 方法中不断的更新 View 的位置即可。

你可能感兴趣的:(Android,WMS,android,WMS)