在Android中,View和ViewGroup有什么区别?

96

ViewViewGroup在Android编程中有何区别?


6
https://dev59.com/2Goy5IYBdhLWcg3wWso_ - M S Gadag
11个回答

141

视图

  1. View 对象是Android中用户界面(UI)元素的基本构建块。
  2. View 是一个简单的矩形框,响应用户的操作。
  3. 例如 EditText, Button, CheckBox 等。
  4. View 指的是 android.view.View 类,它是所有UI类的基类。

视图组

  1. ViewGroup 是不可见的容器。它包含 ViewViewGroup
  2. 例如,LinearLayout 是包含按钮(View)和其他布局的 ViewGroup
  3. ViewGroup 是Layouts的基类。

14
值得一提的是,ViewGroup是View的一个子类。 - Lv99Zubat
那么,如果ViewGroup是View的子类,这是否意味着View是布局的基类而不是ViewGroup? - Shivanshu
2
@Shivanshu 这取决于你所说的“基类”是什么意思。class View又扩展了Object,那么你会说Object是布局的基类吗? - logi-kal

65

8
直戳要点。这张图片用实用的方式解释了它,这是好的,但上面答案的定义似乎也是必要的,以便为整个答案添加重要内容。 - ivanleoncz

32
  1. ViewGroup是一种特殊的视图,可以包含其他视图(称为子视图)。该视图组是布局和视图容器的基类。该类还定义了ViewGroup.LayoutParams类,该类作为布局参数的基类。

    View类表示用户界面组件的基本构建块。视图占据屏幕上的矩形区域,并负责绘制和事件处理。视图是小部件的基类,用于创建交互式UI组件(如按钮,文本字段等)。

  2. 示例:ViewGroup(LinearLayout),View(TextView)

参考资料


14

View是Android中用户界面(UI)的基本构建块。View是一个小矩形框,响应用户输入。例如:EditTextButtonCheckBox等。

ViewGroup是其他视图(子视图)和其他ViewGroups的不可见容器。例如:LinearLayout是一个可以在其中包含其他视图的ViewGroup。

ViewGroup是一种特殊类型的View,它从View扩展其基类。 ViewGroup是布局的基类。

如名称所示,View是单数,View的组是ViewGroup

更多信息: http://www.herongyang.com/Android/View-ViewGroup-Layout-and-Widget.html


4

ViewGroup是一个自身作为容器的View,用于包含其他视图。它扩展了View类的功能,以提供有效的方式来布局子视图。

例如,LinearLayout是一个ViewGroup,允许您定义子视图要布局的方向,您只需要这样做,LinearLayout将会处理其余部分。


3

2

ViewGroup 是一个视图组,你可以将其他一些 View 作为子级添加到其中。它是布局和视图容器的基类。


1

视图对象是用户界面(UI)的组件,例如按钮或文本框,也称为小部件(widget)。

ViewGroup对象是布局,即其他ViewGroup对象(布局)和View对象(小部件)的容器。可以在另一个布局内放置布局,这称为嵌套布局,但可能会增加绘制用户界面所需的时间。

应用程序的用户界面是使用ViewGroup和View对象的层次结构构建的。在Android Studio中,可以使用组件树窗口可视化此层次结构。

Android Studio中的布局编辑器可用于在布局中拖放View对象(小部件),简化布局的创建。


1

View是所有组件的超类,如TextView、EditText、ListView等。 而ViewGroup是视图集合(TextView、EditText、ListView等),有点像容器。


1
简单来说,View是我们在使用应用程序时与之交互的UI元素,例如按钮、编辑文本和图像等。View是Android.view.View的子类。 而ViewGroup是包含所有这些视图及其他几个视图组(如线性或框架布局等)的容器。例如,如果我们将根元素设计为线性布局,则我们的主布局是线性布局,在其中我们可以添加另一个视图组(即另一个线性布局)和许多其他视图,如按钮或文本视图等。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接