Android View和ViewGroup

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android View和ViewGroup相关的知识,希望对你有一定的参考价值。

android ViewGroup继承自ViewViewGroup是一个容纳Views的容器。

ViewGroup (LinearLayout)
View (TextView)

为什么Android上的人将这种关系定义为Inheritance而不是组合。由于ViewGroup包含Views不应该是组成?

答案

我觉得你的措辞过于笼罩。

“ViewGroup”尽可能多地从“View”继承为“TextView”,“ImageView”或......更多的是......“ScrollView”或“SurfaceView”(后者)两个都“包含东西”)。

也许“观点”不一定是术语的最佳选择......但是阶级层次结构是完全有意义的。无论它的子类名称是什么:)

恕我直言 ...

另一答案

我认为这是复合设计模式的一个很好的例子:

http://en.wikipedia.org/wiki/Composite_pattern

即使命名可能不是最好的......

另一答案

阅读the official doc是黄金法则。

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


如果您仍然不知道它是什么,请使用Google图片进行搜索:

enter image description here

另一答案

ViewGroupView的(子类),因为它可以作为重要方面的视图:

  • 它可以是布局XML文件中的元素
  • 它可以显示在屏幕上(通过显示其子视图,自己的背景颜色等)
  • 它与视图层次结构的其余部分一起被充气
  • 它可以作为活动的内容视图(通过setContentView()

所以它真的是一个View

我同意类名ViewGroup有点令人困惑,因为它听起来像是一个组,而不是一个视图。把它称为ViewGroupView可能更合乎逻辑,如果笨拙的话。

另一答案

Viewgroup继承了视图的属性,并对其他视图和视图组执行了更多操作

另一答案

ViewGroup是一个可以包含其他视图的特殊视图。 - 视图组是布局和视图容器的基类 - 例如,RelativeLayout是包含TextView(视图)的ViewGroup,也包含其他布局。

参考链接信息:https://developer.android.com/reference/android/view/ViewGroup.html

View表示用户界面组件的基本构建块 - 它占据屏幕上的矩形并负责绘制和处理事件。 - 例如EditText,Button,TextView等

参考链接信息:https://developer.android.com/reference/android/view/View.html

以上是关于Android View和ViewGroup的主要内容,如果未能解决你的问题,请参考以下文章

Android中View和ViewGroup的区别

Android View和ViewGroup

Android的View和ViewGroup分析

Android之UI View与ViewGroup

自定义ViewGroup获取子View参数

自定义ViewGroup获取子View参数