转:http://blog.youkuaiyun.com/zqilu/article/details/13622495
Activity 是应用程序的基本组成部分,提供了可视的界面,与用户进行交互;
具体Acitivity是怎么样显示这些事视图元素以及响应事件交互的。
一Activity相关概念
Activity:Activity包含一个Window,该Window在Activity的attach方法中通过调用
PolicyManager.makeNewWindo创建;
View:最基本的UI组件,表示屏幕上的一个矩形区域;
DecorView:是Window中View的RootView,设置窗口属性;
Window:表示顶层窗口,管理界面的显示和事件的响应;每个Activity 均会创建一个
PhoneWindow对象,是Activity和整个View系统交互的接口
WindowManager:一个interface,继承自ViewManager。所在应用进程的窗口管理器;
有一个implementation WindowManagerImpl;
主要用来管理窗口的一些状态、属性、view增加、删除、更新、窗口顺序、消息收集和处理等。
ViewRoot:通过IWindowSession接口与全局窗口管理器进行交互:界面控制和消息响应;
ActivityThread:应用程序的主线程,其中会创建关联当前Activity与Window;
创建WIndowManager实现类实例,把当前DecoView加入到WindowManager;

二 实现流程框架图
Activity上Window的创建关联流程如下:

相关类结构:

层级关系:
(此图网上盗用...)

-
顶
本文详细解析了Android中Activity如何通过Window、View等组件实现用户界面的展示及交互过程。从Activity的基本概念入手,介绍了Activity与Window的关系,以及WindowManager、ViewRoot等关键组件的作用。
1684

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



