View,Widget,ViewGroup和Layout同属一类;View是界面显示的基本单元,会draw()到Canvas上。ViewGroup继承View,是个容器,内部有View[]数组;有些Widget(如ImageView,TextView等)继承View;有些Widget(如AdapterView,GridView等)继承ViewGroup;所有Layout(如LinearLayout,FrameLayout)也都继承ViewGroup;Window是个抽象类,PhoneWindow是其手机上的实现类;它拥有个Context,在构造的赋值,通过它可以获取各种系统参数。它拥有个WindowManager,负责跟系统的WINDOW_SERVICE通信;它拥有个派生自FrameLayout的DecorView,作为该窗口上的控件树的根;它拥有Window类型的mContainer和mActiveChild,用于管理窗口之间的关系;PhoneWindow主要包含:标题(TextView mTitleView和ActionBarView mActionBar);内容区域(ViewGroup mContentParent),通常用setContentView()设置。选择菜单(ContextMenuBuilder mContextMenu),可以显示或隐藏。Activity,跟Application和Service等都派生自Context(上下文,环境);它拥有个Window,在attach()时,由PolicyManager.makeNewWindow()赋值; 它拥有个mMainThread,用于记录执行线程,在attach()时,由外部传入。它拥有Activity类型的mParent,用于维护Activity之间的关系;PolicyManager拥有个IPolicy,它的makeNewWindow()调用了new PhoneWindow;转载自:http://blog.csdn.net/gaojinshan/article/details/16859125

入门级的基础知识,以前对View,VIewGroup,widget,layout等的关系搞不清楚,通过学习后,做了下总结,如下:

1.View,ViewGroup

>View:

}1、所有高级UI组件都继承View类而实现的 }2、一个View在屏幕上占据一块矩形区域 }3、 负责渲染 }4、负责处理发生的事件 }5、设置是否可见 }6、设置是否可以获得焦点等   2.ViewGroup: }1、一个ViewGroup对象是一Android.view.ViewGroup实例 }2、View的容器 }3、 负责对添加进ViewGroup的View进行布局 }4、一个ViewGroup可以加入到另一个ViewGroup   3.View ,ViewGroup的关系  

4.View,widgetView的继承关系

2.widget

}1、界面中展示的各个小组件 }2、有独立的事件处理能力 }3、所有Wiget组件都是继承View而来 注:1.widget并不是实际存在的类,它是一个包,而VIew等就是实际存在的类,所以首字母大写。在引用时,通常:

          import Android.view.View;

          import android.widget.TextView;

         因为widget是包,所以首字母小写

        2.在该包内放的是UI Elements,包括TextView,ListView,但是这些元素都继承自View或ViewGroup。如下图所示:

 

 

 

其中各种layout继承自ViewGroup

4 layout

对UI 组件进行布局

 关于view及其子类的关系如下:

转载自:http://blog.csdn.net/jason_wks/article/details/6619224

更多相关文章

  1. Android(安卓)TabHost的三中实现方式
  2. 我的Android进阶之旅------>Android颜色值(#AARRGGBB)透明度百分比
  3. app包下的fragment 和 v4 包下的fragment的区别 以及兼容包suppo
  4. 问题资源Android(安卓)lint 能够做的事情
  5. Android四大组件生命周期,组件类的继承与实现,Context
  6. 【Android】 设置App字体不跟随系统字体改变
  7. Kotlin继承
  8. Android(安卓)通过findViewById方式创建TabHost

随机推荐

  1. 浅谈android的selector背景选择器
  2. Android分析之LowMemoryKiller
  3. Android(安卓)Binder入门指南之Binder服
  4. Android蓝牙开发浅析
  5. UnityAndroid开发(1) 打包和使用Sqlite数
  6. Android(安卓)老生常谈之消息机制
  7. Android(安卓)4层框架
  8. 调用Android自带浏览器打开网页
  9. Android图像处理之GPUImage for Android
  10. android音频hal层简介