Android'de View ve ViewGroup arasındaki fark


Yanıtlar:


131

Görünüm

  1. View nesneler, Android'deki Kullanıcı Arabirimi (UI) öğelerinin temel yapı taşlarıdır.
  2. View kullanıcının eylemlerine cevap veren basit bir dikdörtgen kutudur.
  3. Örnek olarak EditText, Button, CheckBoxvb ..
  4. Viewandroid.view.Viewtüm UI sınıflarının temel sınıfı olan sınıfı ifade eder .

Grubu Görüntüle

  1. ViewGroupgörünmez kaptır. Tutar ViewveViewGroup
  2. Örneğin, LinearLayoutbir ViewGroupDüğme (Bak) içerdiğini ve aynı zamanda diğer Düzenleri.
  3. ViewGroup Layouts için temel sınıftır.

11
Ayrıca ben kayda değer düşünüyorum ViewGroup View alt sınıfı
lv99Zubat

Öyleyse, ViewGroup, View'un bir alt sınıfı ise, View, ViewGroup değil Layouts için temel sınıftır?
Shivanshu

1
@Shivanshu "Temel sınıf" ile ne demek istediğine bağlı. Sınıf Viewuzanır sıraylaObject , yani söyleyebilirim Objectdüzenleri için taban sınıftır?
horcrux

60

Cevap aşağıdaki resimdir . Çok karmaşık alma.

görüntü açıklamasını buraya girin


7
Noktasına doğru. Resim bunu çok pragmatik bir şekilde açıklıyor, bu iyi bir şey, ancak cevaba bir bütün olarak önemli bir şey eklemek için yukarıdaki cevabın tanımı da gerekli görünüyor.
ivanleoncz

31
  1. A ViewGroup, diğer görünümleri (alt öğe olarak adlandırılır) içerebilen özel bir görünümdür. Görünüm grubu, düzenler ve görünüm kapları için temel sınıftır. Bu sınıf ayrıca, ViewGroup.LayoutParamsdüzen parametreleri için temel sınıf olarak hizmet veren sınıfı da tanımlar .

    Viewsınıfı, kullanıcı arabirimi bileşenleri için temel yapı taşını temsil eder. Görünüm, ekranda dikdörtgen bir alanı kaplar ve çizim ve olayın ele alınmasından sorumludur. Görünüm, etkileşimli UI bileşenleri (düğmeler, metin alanları vb.) Oluşturmak için kullanılan widget'lar için temel sınıftır.

  2. Örnek: ViewGroup (LinearLayout), View (TextView)

Referans


14

ViewUIandroid'deki (Kullanıcı Arayüzü) temel yapı taşıdır . Görünüm, kullanıcı girdilerine yanıt veren küçük dikdörtgen bir kutudur. Örn: EditText, Button, CheckBox, vb ..

ViewGroupdiğer görünümlerin (alt görünümler) ve diğer görünüm gruplarının görünmez bir kapsayıcısıdır. Örneğin: LinearLayoutiçinde başka görünümler barındırabilen bir görünüm grubudur.

ViewGroupView'den temel sınıfı olarak genişletilen özel bir görünüm türüdür. ViewGroupdüzenler için temel sınıftır.

adından da anlaşılacağı gibi, Görünüm tekildir ve Görünümler grubu ViewGroup.

daha fazla bilgi: http://www.herongyang.com/Android/View-ViewGroup-Layout-and-Widget.html


4

ViewGroupkendisi Viewdiğer görünümler için bir kap olarak çalışan bir özelliktir. ViewÇocuk görünümlerini düzenlemek için verimli yollar sağlamak için sınıfın işlevselliğini genişletir .

Örneğin, LinearLayoutbir olduğunu ViewGroupo yapmanız gereken ve hepsi size çocuk görünümleri döşenecek istediğiniz yönünü tanımlamak olanak veren LinearLayoutdinlenme ilgilenir.



2

içinde çocuk olarak ViewGroupbaşka Views ekleyebilirsiniz . ViewGroupdüzenler ve görünüm kapsayıcıları için temel sınıftır.


1

ViewTüm bileşenlerin Süper Sınıfıdır, TextView, EditText, ListView,vb. ViewGroup, Görünüm Koleksiyonu ise (TextView, EditText, ListView, etc..), bir şekilde konteyner gibi.


1

Görünüm nesnesi, bir düğme veya metin kutusu gibi kullanıcı arabiriminin (UI) bir bileşenidir ve aynı zamanda widget olarak da adlandırılır.

Bir ViewGroup nesnesi bir düzendir, yani diğer ViewGroup nesnelerinin (düzenler) ve Görünüm nesnelerinin (parçacıklar) bir kapsayıcıdır. Başka bir düzenin içinde bir düzen olması mümkündür. Buna iç içe düzen denir, ancak kullanıcı arayüzünü çizmek için gereken süreyi artırabilir.

Bir uygulamanın kullanıcı arabirimi, ViewGroup ve View nesnelerinin bir hiyerarşisi kullanılarak oluşturulur. Android Studio'da, bu hiyerarşiyi görselleştirmek için Bileşen Ağacı penceresini kullanmak mümkündür.

Android Studio'daki Mizanpaj Düzenleyici, mizanpajdaki Görünüm nesnelerini (widget'lar) sürükleyip bırakmak için kullanılabilir. Bir düzen oluşturmayı basitleştirir.


1

Basit bir ifadeyle Görünüm, düğme, metin ve resim düzenleme gibi bir uygulama kullandığımızda etkileşime girdiğimiz UI öğesidir. View, Android'in alt sınıfıdır. View.View While View grubu, tüm bu görünümleri içeren kapsayıcıdır. Doğrusal veya Çerçeve Yerleşimi vb. gibi çeşitli görünüm gruplarına ek olarak. Örneğin, kök elemanı Doğrusal yerleşim olarak tasarlar ve alırsak, şimdi ana düzenimiz onun içindeki doğrusal düzendir, başka bir görünüm grubu (yani başka bir Doğrusal düzen) ve diğer birçok düğmeler veya metin görünümü vb. görünümler


0

Bir ViewGroup, kendi grubundaki Görünümlerin düzenini tanımlar. ViewGroups için iki temel örnek LinearLayout ve RelativeLayout'tur. LinearLayout'u daha da aşarak, Vertical LinearLayout veya Horizontal LinearLayout'a sahip olabilirsiniz. Dikey Doğrusal Yerleşimi seçerseniz, Görünümleriniz ekranınızda dikey olarak yığılır. Görünümlerin en temel iki örneği TextView ve Button'tır. Bu nedenle, Dikey Doğrusal Yerleşimden oluşan bir Görünüm Grubunuz varsa, Görünümleriniz (ör. Metin Görünümleri ve Düğmeler) ekranınızda dikey olarak hizalanır.

Diğer posterler iç içe geçmiş ViewGroups gösterdiklerinde, bunların anlamı, örneğin, Dikey Doğrusal Yerleşimimdeki satırlardan biri aslında, daha düşük seviyede, yatay olarak düzenlenmiş birkaç öğe olabilir. Bu durumda, en üst seviye Dikey Doğrusal Yerleşimimin çocuklarından biri olarak bir Yatay Doğrusal Yerleşimim olurdu.

İç İçe Görünüm Grupları Örneği:
Üst Görünüm Grubu = Dikey Doğrusal Yerleşim


Satır1 : TextView1 Satır2: Button1
Row3: Image TextView2 Button2 <- Dikey Doğrusal
Satır4'te yuvalanmış Yatay Doğrusal Satır4: TextView3
Satır5: Button3


1
İç İçe Görünüm Grupları Örneği:
sv Math Tutor
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.