Activity中包含views和ViewGroups(视图组)。

Android中的View与我们以前理解的“视图”不同。在Android中,View比视图具有更广的含义,它包含了用户交互和显示,更像Windows操作系统中的window。

ViewGroup是View的子类,所以它也具有View的特性,但它主要用来充当View的容器,将其中的View视作自己的孩子,对它的子View进行管理,当然它的孩子也可以是ViewGroup类型。

ViewGroup和它的孩子们(View和ViewGroup)以树形结构形成了一个层次结构,View类有接受和处理消息的功能,android系统所产生的消息会在这些ViewGroup和 View之间传递。

View


View就是显示在屏幕上的一个组件(Widget)。

View的例子:按钮(Button)、标签(TextView)和文本框(EditText)。每个“视图”(View)都继承自基类android.view.View。


ViewGroup

ViewGroup可以包含一个或多个View。ViewGroup本身就是一种特殊的View,它提供了一个布局,可以使用这个布局去组织一系列的View视图。ViewGroup继承于View,它可以包含其他的View,就像一个View的容器,我们可以调用其成员函数addView()将View当作孩子放到ViewGroup中。

我们经常使用的LinearLayout、relativeLayout等都是ViewGroup的子类,ViewGroup类中有一个内部类ViewGroup.LayoutParams,我们经常使用LayoutParams的子类来构造布局参数。

我们也可以自定义自己的布局,以方便日后使用和维护,这时我们就需要继承ViewGroup类并在派生类中重写ViewGroup的一些方法,
ViewGroups的例子:LinearLayout和FrameLayout。每个“ViewGroup”都继承自基类android.view.ViewGroup。

Android提供了以下的ViewGroups:

LinearLayout
AbsoluteLayout
TableLayout
RelativeLayout
FrameLayout
ScrollView

更多相关文章

  1. 浅谈Android布局
  2. Android触摸事件传递机制
  3. 一起学android之DigitalClock与TextClock的创建(8)
  4. Android官方教程翻译(3)——创建一个简单的用户界面
  5. [置顶] Android(安卓)经典面试题整理(一)(附答案)
  6. Andriod: 在xml布局中使用自定义属性
  7. Android(安卓)- Toolbar 神秘的左margin
  8. RecyclerView的简单使用
  9. Android中MenuInflater的使用(布局文件定义Menu菜单)

随机推荐

  1. js是否为空判断大全
  2. 如何使用jQuery选择列表中的最后X项?
  3. jquery为属性过滤器动态添加值?
  4. jQuery Datatable(V1.10.7) server side pr
  5. 如果没有附加,则隐藏本身
  6. 导入地址簿联系人,存储在数组中并保存到数
  7. 绑定和解除相同javascript函数的目的是什
  8. jquery不会对select/选项更改事件作出反
  9. jquery ajax和php实现返回值 json类型
  10. 使用jquery post发布PHP文件