Yanıtlar:
LinearLayout
görünümleri tek tek hizalayabileceğiniz anlamına gelir (dikey / yatay).
RelativeLayout
, ebeveynlerinin görüşleri ve diğer görüşler arasındaki ilişkiye dayanır.
ConstraintLayout
konum ve boyut widget'larıyla ilişkiler kullanması, ancak ek esnekliğe sahip olması ve Mizanpaj Düzenleyicisi'nde kullanımı daha kolay olması nedeniyle RelativeLayout'a benzer.
WebView
html, statik veya dinamik sayfalar yüklemek için.
FrameLayout
bir çerçevenin içindeki kartlar gibi çocuğu üst üste yüklemek için, çerçevenin içine ya da herhangi bir yere yerleştirebiliriz.
kullanımdan kaldırıldı - AbsoluteLayout
görünümün nerede olması gerektiğini tam olarak belirtmeniz gerektiği anlamına gelir.
Daha fazla bilgi için lütfen bu adresi kontrol edin https://developer.android.com/guide/topics/ui/declaring-layout#CommonLayouts
AbsoluteLayout
bir nedenden dolayı reddedildi; içerik uymuyorsa, rastgele şeyler atar. Bir LinearLayout
ve tüm dolgularını ayarlayarak daha iyi durumdasınız 0
.
FrameLayout, tek bir öğeyi görüntülemek için ekrandaki bir alanı engellemek üzere tasarlanmıştır. Genel olarak, FrameLayout tek bir alt görünüm elde etmek için kullanılmalıdır, çünkü alt üst görünümleri, çocuklar üst üste binmeden farklı ekran boyutlarına ölçeklenebilir bir şekilde düzenlemek zor olabilir. Bununla birlikte, bir FrameLayout'a birden çok alt öğe ekleyebilir ve
android:layout_gravity
özniteliği kullanarak her bir çocuğa yerçekimi atayarak FrameLayout içindeki konumlarını kontrol edebilirsiniz .Alt görünümler, en son eklenen çocuk üstte olacak şekilde bir yığın halinde çizilir. FrameLayout öğesinin boyutu, görünür ya da görünmeyen (FrameLayout öğesinin üst öğesi uygunsa) en büyük alt öğesinin (artı dolgu) boyutudur.
RelativeLayout, bir kullanıcı arabirimi tasarlamak için çok güçlü bir yardımcı programdır, çünkü iç içe görünüm gruplarını ortadan kaldırabilir ve düzen hiyerarşinizi düz tutabilir, bu da performansı artırır. Birkaç iç içe LinearLayout grubu kullandığınızı fark ederseniz, bunları tek bir RelativeLayout ile değiştirebilirsiniz.
( Buradaki dokümanlar )
Bir TableLayout
TableRow
, her biri bir satır tanımlayan bir dizi nesneden oluşur (aslında, aşağıda açıklanacak başka çocuklarınız olabilir). TableLayout kapları satırları, sütunları veya hücreleri için sınır çizgileri görüntülemez. Her sıra sıfır veya daha fazla hücreye sahiptir; her hücre bir View nesnesini tutabilir. Tablo, en fazla hücreye sahip satır kadar sütun içerir. Bir tablo hücreleri boş bırakabilir. Hücreler, HTML'de olduğu gibi sütunlara yayılabilir.Bir sütunun genişliği, o sütundaki en geniş hücrenin bulunduğu satırla tanımlanır.
Not : Mutlak Düzen kullanımdan kaldırılmıştır.
LinearLayout: Çocuklarını tek bir yatay veya dikey sıra halinde düzenleyen düzen. Pencerenin uzunluğu ekranın uzunluğunu aşarsa kaydırma çubuğu oluşturur.Bu, görünümleri tek tek (dikey / yatay) hizalayabileceğiniz anlamına gelir.
RelativeLayout: Bu, alt nesnelerin birbirlerine göre (B çocuğunun solundaki A çocuğu) veya ebeveyne (ebeveynin üstüne hizalanmış) konumunu belirlemenizi sağlar. Bu, ebeveynlerinin görüşleri ve diğer görüşler arasındaki ilişkiye dayanmaktadır.
WebView: html, statik veya dinamik sayfalar yüklemek için.
Daha fazla bilgi için bu bağlantıya bakın: http://developer.android.com/guide/topics/ui/layout-objects.html
LinearLayout - LinearLayout'ta görünümler dikey veya yatay yönde düzenlenir.
RelativeLayout - RelativeLayout, LinearLayout'tan çok daha karmaşıktır, bu nedenle çok daha fazla işlevsellik sağlar. Görünümler, adından da anlaşılacağı gibi, birbirlerine göre yerleştirilir.
FrameLayout - Tek bir nesne gibi davranır ve alt görünümleri üst üste bindirilir. FrameLayout, en büyük alt öğeye göre boyut alır.
Koordinatör Düzeni - Bu, Android destek kitaplığında tanıtılan en güçlü ViewGroup'tur. FrameLayout gibi davranır ve örneğin yüzer düğme ve snackbar, kaydırılabilir görünüme sahip Araç Çubuğu gibi alt görünümleri arasında koordinasyon sağlamak için birçok işlevselliğe sahiptir.
Burada harika açıklama:
https://www.cuelogic.com/blog/using-framelayout-for-designing-xml-layouts-in-android
LinearLayout öğeleri yatay veya dikey olarak yan yana düzenler.
RelativeLayout , kullanıcı arayüzü öğelerinizi belirli kurallara göre düzenlemenize yardımcı olur. Şunlar gibi kurallar belirtebilirsiniz: bunu ebeveynin sol kenarına hizalayın, bu öğelerin soluna / sağına yerleştirin vb.
AbsoluteLayout mutlak konumlandırma içindir, yani görünümün nereye gitmesi gerektiği konusunda kesin koordinatlar belirleyebilirsiniz.
FrameLayout , görünümlerin Z ekseni boyunca yerleşmesine izin verir. Bu, görünüm öğelerinizi üst üste istifleyebileceğiniz anlamına gelir.