android视图(View)理解

来源:互联网 发布:编程c语言入门 编辑:程序博客网 时间:2024/05/29 16:25

android 的大部分UI组件都放在了android.widget包及其子包,android.view包及其子包中。

对android来说android的所有UI组件都是继承至View类。

View有一个特殊的子类ViewGroup,它主要是用来当其他组件的容器。最大的特点是ViewGroup可以包含View和ViewGroup.

由于ViewGroup是一个抽象的类,所以常用它的子类(ViewGroup.LayoutParams,ViewGroup.MarginLayoutParams(Margin和网页里的类似,四周的空白))来作容器。例如:布局管理器。

无论创建什么控件都需要在构造方法中传入一个"this",这个"this"指的是Context(android应用环境信息API)UI控件拥有它后,就能获取当前应用环境的信息。Context本身是一个抽象类,Activity和Service都继承至它,所以Activity,Service的对象都可以当作Context对象使用。


自定义一个View(自定义控件)

论:一个View从xml到显示要调用的构造器

onFinishInflate()   当应用从xml布局文件中加载该组件时被调用。

onMeasure(int,int)    检测当前组件的大小并检测它包含的子控件大小。

onLayout(boolean,int,int,int,int)   当控件需要分配改子控件的位置,大小时被调用。

onSizeChanged(int,int,int,int)   当控件的大小被改变时回调该方法。

onDraw(Canvas)   绘制该组件时回调的方法

还有很多构造器,这几个主要怎么把一个控件从XML显示到界面的。





0 0