2011-12-23 234 views
7

在Android中ViewGroup繼承自View。 A ViewGroup是容納Views的容器。Android查看和查看組

ViewGroup (LinearLayout) 
View (TextView) 

爲什麼在做的Android人們定義這種關係Inheritance代替組合物。由於ViewGroup包含Views它不應該是組成?

+0

[在Android設備上查看和ViewGroup中的差異(可能的重複http://stackoverflow.com/questions/27352476/difference -between - 視圖 - 和 - 的ViewGroup功能於機器人) – Suragch 2016-11-07 07:02:24

回答

11

我覺得你太過於掛斷了措辭。

一個「ViewGroup」的每一個原因從「視圖」作爲一個「TextView」和「ImageView」繼承或...更多的點...一個「ScrollView」或「SurfaceView 「(後兩者」包含的東西「)。

也許「視圖」不一定是術語的最佳選擇......但是類圖層可以完全理解。不管那是什麼子類被命名爲:)

恕我直言...

0

的ViewGroup繼承性的意見,並與其他觀點確實越來越ViewGroup中

1

ViewGroup是(子類)View,因爲它可以作爲重要的方面一個觀點:

  • 它可以在佈局XML文件
  • 它可以在屏幕上顯示一個元素(通過顯示其子視圖,其自己的背景顏色等)
  • 它獲取與視圖層次其餘
  • 它可以作爲一個活動的內容視圖(通過setContentView()一起發生膨脹)

所以它真的是View

我同意類名ViewGroup有點混亂,因爲它聽起來像是一個組,而不是一個視圖。如果笨拙,稱它爲ViewGroupView可能更合乎邏輯。

2

閱讀the official doc是黃金法則。

ViewGroup是一個可包含其他視圖(稱爲子視圖)的特殊視圖。視圖組是佈局和視圖容器的基類。該類還定義了ViewGroup.LayoutParams類,它用作佈局參數的基類。


如果你還沒有找到它是什麼,搜索與谷歌圖片:

enter image description here

0

一個ViewGroup中是可以包含其他視圖的特殊的視圖。 - 視圖組是佈局和視圖容器的基類 - 例如,RelativeLayout是包含TextView(視圖)和其他佈局的ViewGroup。

參考鏈接信息: https://developer.android.com/reference/android/view/ViewGroup.html

一個視圖代表用戶界面組件的基本構建塊 - 它佔據了屏幕上的矩形,並負責繪製和處理事件。 - 的例子是EditText上,按鈕的TextView等

指爲信息鏈接: https://developer.android.com/reference/android/view/View.html