AndroidでのViewとViewGroupの違い


回答:


129

見る

  1. View オブジェクトは、Androidのユーザーインターフェイス(UI)要素の基本的な構成要素です。
  2. View ユーザーのアクションに応答する単純な長方形のボックスです。
  3. 例としてはEditTextButtonCheckBoxなど。
  4. Viewandroid.view.ViewすべてのUIクラスの基本クラスであるクラスを指します。

ViewGroup

  1. ViewGroup非表示のコンテナです。それを保持しViewViewGroup
  2. たとえば、にLinearLayoutViewGroupButton(View)と他のレイアウトも含まれています。
  3. ViewGroup レイアウトの基本クラスです。

10
また、注目に値すると思います。ViewGroupはViewのサブクラスです
Pinkerton

では、ViewGroupがViewのサブクラスである場合、ViewがViewGroupではなくLayoutsの基本クラスであることを意味しますか?
Shivanshu

1
@Shivanshu「基本クラス」の意味によって異なります。クラスView拡張ターンではObject、あなたがそれを言うObjectレイアウトの基本クラスですか?
horcrux

57

下の画像は答えです。複雑すぎないでください。

ここに画像の説明を入力してください


7
ポイントにまっすぐ。画像はそれを非常に実用的な方法で説明していますが、全体として重要なものを追加するには、上記の回答の定義も必要と思われます。
ivanleoncz 2016

31
  1. A ViewGroupは、他のビュー(子と呼ばれる)を含むことができる特別なビューです。ビューグループは、レイアウトおよびビューコンテナーの基本クラスです。このクラスは、ViewGroup.LayoutParamsレイアウトパラメータの基本クラスとして機能するクラスも定義します。

    Viewクラスは、ユーザーインターフェイスコンポーネントの基本的なビルディングブロックを表します。ビューは画面上の長方形の領域を占め、描画とイベント処理を担当します。ビューはウィジェットの基本クラスであり、インタラクティブなUIコンポーネント(ボタン、テキストフィールドなど)を作成するために使用されます。

  2. 例:ViewGroup(LinearLayout)、View(TextView)

参照


14

ViewUIAndroidの(ユーザーインターフェイス)の基本的な構成要素です。ビューは、ユーザー入力に応答する小さな長方形のボックスです。例えば:EditTextButtonCheckBox、など。

ViewGroup他のビュー(子ビュー)および他のビューグループの非表示のコンテナです。例:LinearLayout他のビューを含むことができるビューグループです。

ViewGroupViewを基本クラスとして拡張した特殊なビューです。ViewGroupレイアウトの基本クラスです。

名前が示すように、ビューは単数であり、ビューのグループはViewGroupです。

詳細:http : //www.herongyang.com/Android/View-ViewGroup-Layout-and-Widget.html


4

ViewGroupそれ自体が、View他のビューのコンテナとして機能します。View子ビューをレイアウトする効率的な方法を提供するために、クラスの機能を拡張します。

たとえば、LinearLayoutは、ViewGroup子ビューを配置する方向を定義できるですLinearLayout。これで、あとはすべて面倒です。




1

ViewTextView, EditText, ListView,等のようなすべてのコンポーネントのスーパークラスです。ViewGroupビューのコレクションですが(TextView, EditText, ListView, etc..)、コンテナのようです。


1

ビューオブジェクトは、ボタンやテキストボックスなどのユーザーインターフェイス(UI)のコンポーネントであり、ウィジェットとも呼ばれます。

ViewGroupオブジェクトはレイアウトです。つまり、他のViewGroupオブジェクト(レイアウト)とViewオブジェクト(ウィジェット)のコンテナです。別のレイアウト内にレイアウトを含めることができます。これはネストされたレイアウトと呼ばれますが、ユーザーインターフェースの描画に必要な時間が長くなる可能性があります。

アプリのユーザーインターフェイスは、ViewGroupオブジェクトとViewオブジェクトの階層を使用して構築されています。Android Studioでは、コンポーネントツリーウィンドウを使用してこの階層を視覚化できます。

Android Studioのレイアウトエディターを使用して、レイアウトにビューオブジェクト(ウィジェット)をドラッグアンドドロップできます。レイアウトの作成が簡単になります。


1

簡単に言うと、Viewは、ボタン、テキストや画像の編集など、アプリを使用するときに操作するUI要素です。ViewはAndroid.view.Viewの子クラスです。Viewグループは、これらすべてのビューを含むコンテナです線形またはフレームレイアウトなどのいくつかのビューグループに加えて、それを追加します。ルートエレメントを設計して線形レイアウトとして取得する場合の例は、メインレイアウトがその内部の線形レイアウトであるため、別のビューグループ(つまり、別の線形レイアウト)などを使用できます。ボタンやテキストビューなどのビュー


0

ViewGroupは、グループ内のビューのレイアウトを記述します。ViewGroupsの2つの基本的な例は、LinearLayoutとRelativeLayoutです。LinearLayoutをさらに分割すると、Vertical LinearLayoutまたはHorizo​​ntal LinearLayoutのいずれかを使用できます。Vertical LinearLayoutを選択すると、ビューは画面上で垂直に積み重ねられます。ビューの最も基本的な2つの例は、TextViewとButtonです。したがって、Vertical LinearLayoutのViewGroupがある場合、ビュー(TextViewsやButtonsなど)は画面の下に垂直に並んでいます。

他のポスターにネストされたViewGroupが表示されている場合、それらの意味は、たとえば、Vertical LinearLayoutの行の1つが実際には、下のレベルで、水平に配置された複数のアイテムである可能性があります。その場合、トップレベルのVertical LinearLayoutの子の1つとしてHorizo​​ntal LinearLayoutがあります。

ネストされたViewGroupsの例:
親ViewGroup = Vertical LinearLayout

Row1:TextView1
Row2:Button1 Row3:
Image TextView2 Button2 <-水平線形が垂直線形に入れ子になった
Row4:TextView3
Row5:Button3


1
ネストされたViewGroupの例:
sv Math Tutor
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.