您的位置:首页 > 其它

继承ViewGroup研究

2013-08-12 11:41 323 查看
一、ViewGroup概述

 

研究ViewGroup之前,我们先来看看ViewGroup的介绍:

 

[align=left]*isviewcontain children.)groupbaselayouts Thisdefines*classas forViewGroup是一个可以包含其他ViewGroup是各个LayoutParams类来指定这个基类的布局参数。(翻译的不太好,能看懂就行了)[/align]
 

Android关于ViewGroup的解释还是比较清楚的,通过这个我们可以看出几点:

1、ViewGroup是一个容器,而这个容器是继承与View的。

2、ViewGroup是一个基类,并且是Layout和一些View组件的基类。

等等,不一而足,眼界有多高相信看到的就有多远,呵呵。

 

二、ViewGroup的三个方法

 

在继承ViewGroup时有三个重要的方法,下面我们就来看看:

 

1、onLayout方法

protectedvoid left, int bottom) {

 

        addView(child, -1);

 index) {

            return        } catch;

 HelloViewGroup extends HelloViewGroup(Context
context, AttributeSet attrs) {
[align=left]           }[/align]
[align=left] HelloViewGroup(Context context) {[/align]
[align=left]           }[/align]
[align=left] [/align]
    protectedvoid l, int b)
{
[align=left] Auto-generated method stub[/align]
[align=left] [/align]
[align=left] MainActivity extends/**thefirst     publicvoid.onCreate(savedInstanceState);[/align]
[align=left]));[/align]
/**
[align=left]View的方法[/align]
[align=left]*/[/align]
[align=left]       ImageView mIcon = new);[/align]
[align=left]       addView(mIcon);[/align]
 onLayout(boolean t, int      
View v = getChildAt(0);
[align=left]<span courier="" new';="" color:="" black;="" font-size:="" 10pt"="" style="padding: 0px; margin: 0px; ">       v.layout(l, t, r, b);[/align]
<span courier="" new';="" color:="" black;="" font-size:="" 10pt"="" style="padding: 0px; margin: 0px; ">    }

 

 

 

 

 

然后我们 看看运行效果:

          

           



 

 

是不是出效果了,哈哈,自己试一试吧,不过是之前记得创建一个mContext并在构造函数里初始化一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: