Android Programlama | XML Ve Layout

deltaturk

Moderasyon Ekibi Lider Yardımcısı
26 Kas 2020
925
971
Green Team Mersin Daire Bşk.

XML Nedir


XML, Açılımı ile genişletilebilir işaretleme dilidir Android Proğramlama sırasında sıkça XML ile çalışacaksınız
XML'i Android Studio'da Palette İçindeki Text,Button,Label gibi araçları düzenlerken onların yapısını değiştirirken kullanacağız Yani bir nevi nesne tanımı yapacağız XML ile

Yani XML Verileri tanımlamak için kullanılan bir dildir
Çoğu işletim sistemi ve Cihaz tarafından okunabilir
HTML İle benzerliği vardır XML'in
Kısmen MetaData Dildir
Siz Android geliştirici olmak istiyorsanız kesinlikle ve kesinlike XML ile tasarım yapmayı öğrenmelisiniz bu şekilde var olanın dışına çıkıp daha komplike ve görselliği düzgün olan tasarımlar yapabilirsiniz
Farklı cihazlar arasında veri alışverişini kolaylaştırdığı için uyumsuzluk ve kopmaları engeller niteliktedir.

Örnek birkaç etiket verecek olursak genişlik,uzunluk,yükselik etiketleri XML tasarımlarımızda temez etiketlerdir bunlara daha fazlası eklenebilir ama şimdilik bu 3 örneği verdim
Sürükle-Bırak (toolbox) yöntemi çok sıradan ve var olan içerikler üzerine dayalı olduğundan dolayı bu önerilmez biz de XML tasarım yapacağız




Örnek XML Kodlarının Resmini Yukarda Belirttim, Tasarım Sırasında Bu Tip Kodlardan Yürüyeceğiz.

Layout Nedir


Oluşturduğumuz Android Projelerinde nesneleri düzenlediğimiz yani Arayüz kısmı acitivity_main.xml olarak gözükür bu Arayüz kısımlarını Layout ile tasarlarız.
Layout Android Projemizdeki res Klasörünün içindeki xml dosyalarıdır



Yukarıda Gördüğünüz Resimde Layout Sayfamız Ve Sol Tarafında İse Bahsettiğim res Dosyamız Ve activiy_main.xml Dosyaları Gözükmektedir
İsterseniz Sol Taraftan Ek Layout Dosyası Ekleyebilirsiniz.
Ben Genellikle Layout Yönlendirme İçin Kullanıyorum.

Android Tasarımında Layout bizim için yol arkadaşı olacak.
Kısmen uygulamamızın temelini burdan oluşturacağız ve burası bizim için başlangıç yeridir.
Sürükle-Bırak seçenği ile ToolBox araçlarını ekleyebilir veya XML Kısmında XML İle kodlarla araç oluşturabilirsiniz.





Layout Türleri | Linear Layout


İçeriklerin Yatay veya Dikey olarak hizalanmasıdır
android:eek:rientation="horizontal" veya "vertical" seçeneklerinden biri belirlenir bu nitelikler ile Linear Layout gerçekleştirilir

Layout Türleri | Relative Layout


Konumlandırma göreceli olarak gerçekleştirilir yani bir view'e göre başka bir view'e göre eşit hizalandırmadır
Yani A View'i B'View'i ile eşit hizalanır
Eğer A View'i B View'inin altında olsun İsterseniz
android:layout_below=id
Komutu ile gerçekleştiririz

Layout Türleri | Table Layout


Viewleri satırlara ve sütunlara gruplayan bir Layout türüdür
Kısacası Tablo oluşturmanızı sağlar

Layout Türleri | Absolute Layout


View'lerin tam konumunun belirlenmesini sağlayan Layout türüdür
Başka bir değişle kullanacağızın öğeler için nokta atışı yaptığınız, pixel pixel konum belirtip konumlandırabileceğiniz Layout türüdür

Layout Türleri | Frame Layout


Tek bir eleman olabilir ve tek te birden fazla eleman veya öğe göstermek için kullanılır
Kısmen buna çerçeve düzeni de denebilir.

Layout Türleri | Constraint Layout


Android ögelerini (toolbox) Sürükle bırak yöntemini kullanabilmemize yarar bu sayede hiç uğraşmadan kolaylıkla konumlandırma yapabiliriz.
Ek Olarak Constraint Layout kullanarak her türlü cihaza tasarım açısından uyumluluk sağlayabiliriz





Layout Nitelikleri


Bir Linear Layout Oluşturalım arkadaşlar.



Gördüğünüz gibi boyut istiyor önce
android:layout_width="" yani genişlik istiyor sonra
android:layout_height="" yani yükselik istiyor.
Linear Layout olduğu için Orieantation oluşturmak zorundayız bunu sebebi ise hizalama yatay mı yoksa dikey mi olacak Öğemiz (layout) bunu bilmeli

android:layout_width="" ayarlayalım arkadaşlar
android:layout_widht="50" YANLIŞ KULLANIM
android:layout_width="50dp" DOĞRU KULLANIM

İlla 50dp Kullanmak zorunda değilsiniz birden fazla terim vardır birden fazla boyut ayarı vardır bunlar için Ctrl-Space Basarsanız 6 terim karşısına çıkacaktır benim önerim dp kullanmanızdır.
Aynı işlemler android:layout_height="" için'de geçerlidir arkadaşlar

Biz bir tane daha layout eklersek iki layout üst üste duracaktır bunu sebebi Relative Layout olmasıdır Bunu önlemek için göreceli konumlandırma yapmamız gerekiyor

TextView id'imizi alalım ve LinearLayout bölümüne inelim
Yazmamız gereken komut
android:layout_below="Text nesnemizin id'sini yazıyoruz"
Bu sayede iki nesne de alt alta oldu

Layout'umuz şuan ekranda görünmemektedir o yüzden bir arka plan rengi tanımlayacağız arkadaşlar.
android:background="istediğimiz renk kodu"
Bu sayede eklediğimiz layout'u görebiliyoruz
Güncel Kod İçeriğimiz ise Şu Şekilde Gözüküyor






Layout'umuzun genişliği mobil cihazımızın ekran genişliğiyle aynı olsun istiyor isek hatırlarsanız
android:layout_width="50dp" yazmıştık buraya gelelim ve 50dp yi silip Ctrl-Space tuşlarına basalım.
Karşımıza 2 seçenek gelecek




match_parent - Layout Genişiği Ve Yükseliği Mobile Uyumlu Olur
Kullanımı İse Şu Şekilde ;
android:layout_height="match_parent"
android:layout_width="match_parent"




wrap_content - Layout İçerisindeki Ögelerin Boyutları Kadar Boyut Alır
Kullanımı İse Şu Şekilde ;
android:layout_width="wrap_content"
android:layout_height="wrap_content"




Sonuç olarak wrap_content neye göre hizalanıyor diyeceksiniz arkadaşlar wrap_content text_size'ye göre hizalanır
android:text_size"50dp" kendinize göre ayarlayabilirsiniz bunu



android:layout_margin >>> Kelime anlamı olan kenar boşluğudur.
Dıştan içe doğru Layout'umuzun kenar boşluğunu android:layout_margin ile ayarlayabiliriz.

Kullanımı ise kolay, RelativeLayout'a gelip android:layout_margin"50dp" veya istediğimiz bi dp ayarını veriyoruz
Veya biz sadece yukardan boşluk versin istersek bunu da;
android:layout_marginTop="50dp" komutu ile yapabiliriz sonuç olarak yukardan boşluk verecektir


android:padding="" >>> Bunun amacı da Margin gibidir ama busefer içten boşluk verirsiniz.
Kullanımı ise şu şekilde;
android:padding="50dp" yazarsanız Layout içine eklediğimiz text veya herhangi bi öge bulunduğu konumdan 50dp içeri kayacaktır




android:gravity="" >>> Diyelim ki biz içeriğimizi yani text veya başka bir ögeyi Sola,Sağa,Yukarı,Aşağı kaydırmak istiyoruz bunun içinde Gravitiy niteliğini kullanırız
Kullanımı şu şekilde;
android:gravity="center" Komutunu kullanır isek Layout içindeki ögemiz layout'un tam ortasında konumlanacaktır

Ctrl-Space Basalım karşımıza değerler geldi
android:gravity="bottom" Komutunu kullanır isek ögemiz aşağı sola gider eğer ekrana bitişik olmasını isterseniz android:padding"50dp" komutunu değiştirerek ayarlayabilirsiniz

Peki hem aşşağıya hemde sağa doğru yaslamak istersek şu komutu kullanmalıyız;
android:gravity="bottom|right" komutunu kullanırız bu sayede hem aşağıda hem de sağda konumlandı

Başka bir gravity kullanımı ise ;
android;gravity="top|right"
komutunu kullandık ve layout içindeki ögemiz üst sağ tarafta konumlandı

Ögemizi ortaya getirip sola yaslamak istersek
android:gravity="left|center"
komutu kullandık hem ortalı hem de sola konumlanmış şekilde gördük
bunu "right|center" yaparsak sağa doğru yaslı olarak konumlanır.






Ek olarak tüm yazdığımız XML Kodları ve nitelikleride alt tarafa vereceğim hepsinin anlatımını yaptık

XML Kodlarımız

<TextView
android:layout_width="50dp"
android:layout_height="50dp"
android:text="50dp"
android:textSize="50dp"

<LinearLayout
android:eek:rientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="renk kodu"
android:layout_below="itemid"
android:layout_marginTop="50dp"
android:gravity="center"
>

Konu Resimlerinin Netliğinden Dolayı Affınıza Sığınıyorum Dostlar...
Kendi Sistemimde Olmadığım İçin Böyle Bi Sıkıntı Yaşadım.
Eğitim Sürecinde Bir Sorun Yaşadığınızda Bana Telegram Veya Özel Mesaj Yoluyla Ulaşabilirsiniz Merak Ettiklerinizi Sorularınızı Sorunuz Lütfen :)

Herkese İyi Forumlar
 

JohnWick51

Uzman üye
20 Mar 2022
1,866
770
28

XML Nedir


XML, Açılımı ile genişletilebilir işaretleme dilidir Android Proğramlama sırasında sıkça XML ile çalışacaksınız
XML'i Android Studio'da Palette İçindeki Text,Button,Label gibi araçları düzenlerken onların yapısını değiştirirken kullanacağız Yani bir nevi nesne tanımı yapacağız XML ile

Yani XML Verileri tanımlamak için kullanılan bir dildir
Çoğu işletim sistemi ve Cihaz tarafından okunabilir
HTML İle benzerliği vardır XML'in
Kısmen MetaData Dildir
Siz Android geliştirici olmak istiyorsanız kesinlikle ve kesinlike XML ile tasarım yapmayı öğrenmelisiniz bu şekilde var olanın dışına çıkıp daha komplike ve görselliği düzgün olan tasarımlar yapabilirsiniz
Farklı cihazlar arasında veri alışverişini kolaylaştırdığı için uyumsuzluk ve kopmaları engeller niteliktedir.

Örnek birkaç etiket verecek olursak genişlik,uzunluk,yükselik etiketleri XML tasarımlarımızda temez etiketlerdir bunlara daha fazlası eklenebilir ama şimdilik bu 3 örneği verdim
Sürükle-Bırak (toolbox) yöntemi çok sıradan ve var olan içerikler üzerine dayalı olduğundan dolayı bu önerilmez biz de XML tasarım yapacağız




Örnek XML Kodlarının Resmini Yukarda Belirttim, Tasarım Sırasında Bu Tip Kodlardan Yürüyeceğiz.

Layout Nedir


Oluşturduğumuz Android Projelerinde nesneleri düzenlediğimiz yani Arayüz kısmı acitivity_main.xml olarak gözükür bu Arayüz kısımlarını Layout ile tasarlarız.
Layout Android Projemizdeki res Klasörünün içindeki xml dosyalarıdır



Yukarıda Gördüğünüz Resimde Layout Sayfamız Ve Sol Tarafında İse Bahsettiğim res Dosyamız Ve activiy_main.xml Dosyaları Gözükmektedir
İsterseniz Sol Taraftan Ek Layout Dosyası Ekleyebilirsiniz.
Ben Genellikle Layout Yönlendirme İçin Kullanıyorum.

Android Tasarımında Layout bizim için yol arkadaşı olacak.
Kısmen uygulamamızın temelini burdan oluşturacağız ve burası bizim için başlangıç yeridir.
Sürükle-Bırak seçenği ile ToolBox araçlarını ekleyebilir veya XML Kısmında XML İle kodlarla araç oluşturabilirsiniz.





Layout Türleri | Linear Layout


İçeriklerin Yatay veya Dikey olarak hizalanmasıdır
android:eek:rientation="horizontal" veya "vertical" seçeneklerinden biri belirlenir bu nitelikler ile Linear Layout gerçekleştirilir

Layout Türleri | Relative Layout


Konumlandırma göreceli olarak gerçekleştirilir yani bir view'e göre başka bir view'e göre eşit hizalandırmadır
Yani A View'i B'View'i ile eşit hizalanır
Eğer A View'i B View'inin altında olsun İsterseniz
android:layout_below=id
Komutu ile gerçekleştiririz

Layout Türleri | Table Layout


Viewleri satırlara ve sütunlara gruplayan bir Layout türüdür
Kısacası Tablo oluşturmanızı sağlar

Layout Türleri | Absolute Layout


View'lerin tam konumunun belirlenmesini sağlayan Layout türüdür
Başka bir değişle kullanacağızın öğeler için nokta atışı yaptığınız, pixel pixel konum belirtip konumlandırabileceğiniz Layout türüdür

Layout Türleri | Frame Layout


Tek bir eleman olabilir ve tek te birden fazla eleman veya öğe göstermek için kullanılır
Kısmen buna çerçeve düzeni de denebilir.

Layout Türleri | Constraint Layout


Android ögelerini (toolbox) Sürükle bırak yöntemini kullanabilmemize yarar bu sayede hiç uğraşmadan kolaylıkla konumlandırma yapabiliriz.
Ek Olarak Constraint Layout kullanarak her türlü cihaza tasarım açısından uyumluluk sağlayabiliriz





Layout Nitelikleri


Bir Linear Layout Oluşturalım arkadaşlar.



Gördüğünüz gibi boyut istiyor önce
android:layout_width="" yani genişlik istiyor sonra
android:layout_height="" yani yükselik istiyor.
Linear Layout olduğu için Orieantation oluşturmak zorundayız bunu sebebi ise hizalama yatay mı yoksa dikey mi olacak Öğemiz (layout) bunu bilmeli

android:layout_width="" ayarlayalım arkadaşlar
android:layout_widht="50" YANLIŞ KULLANIM
android:layout_width="50dp" DOĞRU KULLANIM

İlla 50dp Kullanmak zorunda değilsiniz birden fazla terim vardır birden fazla boyut ayarı vardır bunlar için Ctrl-Space Basarsanız 6 terim karşısına çıkacaktır benim önerim dp kullanmanızdır.
Aynı işlemler android:layout_height="" için'de geçerlidir arkadaşlar

Biz bir tane daha layout eklersek iki layout üst üste duracaktır bunu sebebi Relative Layout olmasıdır Bunu önlemek için göreceli konumlandırma yapmamız gerekiyor

TextView id'imizi alalım ve LinearLayout bölümüne inelim
Yazmamız gereken komut
android:layout_below="Text nesnemizin id'sini yazıyoruz"
Bu sayede iki nesne de alt alta oldu

Layout'umuz şuan ekranda görünmemektedir o yüzden bir arka plan rengi tanımlayacağız arkadaşlar.
android:background="istediğimiz renk kodu"
Bu sayede eklediğimiz layout'u görebiliyoruz
Güncel Kod İçeriğimiz ise Şu Şekilde Gözüküyor






Layout'umuzun genişliği mobil cihazımızın ekran genişliğiyle aynı olsun istiyor isek hatırlarsanız
android:layout_width="50dp" yazmıştık buraya gelelim ve 50dp yi silip Ctrl-Space tuşlarına basalım.
Karşımıza 2 seçenek gelecek




match_parent - Layout Genişiği Ve Yükseliği Mobile Uyumlu Olur
Kullanımı İse Şu Şekilde ;
android:layout_height="match_parent"
android:layout_width="match_parent"




wrap_content - Layout İçerisindeki Ögelerin Boyutları Kadar Boyut Alır
Kullanımı İse Şu Şekilde ;
android:layout_width="wrap_content"
android:layout_height="wrap_content"




Sonuç olarak wrap_content neye göre hizalanıyor diyeceksiniz arkadaşlar wrap_content text_size'ye göre hizalanır
android:text_size"50dp" kendinize göre ayarlayabilirsiniz bunu



android:layout_margin >>> Kelime anlamı olan kenar boşluğudur.
Dıştan içe doğru Layout'umuzun kenar boşluğunu android:layout_margin ile ayarlayabiliriz.

Kullanımı ise kolay, RelativeLayout'a gelip android:layout_margin"50dp" veya istediğimiz bi dp ayarını veriyoruz
Veya biz sadece yukardan boşluk versin istersek bunu da;
android:layout_marginTop="50dp" komutu ile yapabiliriz sonuç olarak yukardan boşluk verecektir


android:padding="" >>> Bunun amacı da Margin gibidir ama busefer içten boşluk verirsiniz.
Kullanımı ise şu şekilde;
android:padding="50dp" yazarsanız Layout içine eklediğimiz text veya herhangi bi öge bulunduğu konumdan 50dp içeri kayacaktır




android:gravity="" >>> Diyelim ki biz içeriğimizi yani text veya başka bir ögeyi Sola,Sağa,Yukarı,Aşağı kaydırmak istiyoruz bunun içinde Gravitiy niteliğini kullanırız
Kullanımı şu şekilde;
android:gravity="center" Komutunu kullanır isek Layout içindeki ögemiz layout'un tam ortasında konumlanacaktır

Ctrl-Space Basalım karşımıza değerler geldi
android:gravity="bottom" Komutunu kullanır isek ögemiz aşağı sola gider eğer ekrana bitişik olmasını isterseniz android:padding"50dp" komutunu değiştirerek ayarlayabilirsiniz

Peki hem aşşağıya hemde sağa doğru yaslamak istersek şu komutu kullanmalıyız;
android:gravity="bottom|right" komutunu kullanırız bu sayede hem aşağıda hem de sağda konumlandı

Başka bir gravity kullanımı ise ;
android;gravity="top|right"
komutunu kullandık ve layout içindeki ögemiz üst sağ tarafta konumlandı

Ögemizi ortaya getirip sola yaslamak istersek
android:gravity="left|center"
komutu kullandık hem ortalı hem de sola konumlanmış şekilde gördük
bunu "right|center" yaparsak sağa doğru yaslı olarak konumlanır.






Ek olarak tüm yazdığımız XML Kodları ve nitelikleride alt tarafa vereceğim hepsinin anlatımını yaptık


XML Kodlarımız

<TextView
android:layout_width="50dp"
android:layout_height="50dp"
android:text="50dp"
android:textSize="50dp"

<LinearLayout
android:eek:rientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="renk kodu"
android:layout_below="itemid"
android:layout_marginTop="50dp"
android:gravity="center"
>

Konu Resimlerinin Netliğinden Dolayı Affınıza Sığınıyorum Dostlar...
Kendi Sistemimde Olmadığım İçin Böyle Bi Sıkıntı Yaşadım.
Eğitim Sürecinde Bir Sorun Yaşadığınızda Bana Telegram Veya Özel Mesaj Yoluyla Ulaşabilirsiniz Merak Ettiklerinizi Sorularınızı Sorunuz Lütfen :)

Herkese İyi Forumlar
Ellerine saglik
 

deltaturk

Moderasyon Ekibi Lider Yardımcısı
26 Kas 2020
925
971
Green Team Mersin Daire Bşk.
Elinize Emeğinize Sağlık Hocam.
Teşekkür ederim dostum.
Teşekkür ederim hocam.
Ellerine sağlık. ✨✨
Teşekkür ederim şafağım.
Ellerine sağlık.
Çok Teşekkür ederim hocam.
Teşekkür ederim mascarım.
Teşekkür ederim.
Eline emeğine sağlık.
Teşekkür ederim hocam.
 

Blwe

Uzman üye
17 Şub 2021
1,585
1,645
Green/Moderasyon

XML Nedir


XML, Açılımı ile genişletilebilir işaretleme dilidir Android Proğramlama sırasında sıkça XML ile çalışacaksınız
XML'i Android Studio'da Palette İçindeki Text,Button,Label gibi araçları düzenlerken onların yapısını değiştirirken kullanacağız Yani bir nevi nesne tanımı yapacağız XML ile

Yani XML Verileri tanımlamak için kullanılan bir dildir
Çoğu işletim sistemi ve Cihaz tarafından okunabilir
HTML İle benzerliği vardır XML'in
Kısmen MetaData Dildir
Siz Android geliştirici olmak istiyorsanız kesinlikle ve kesinlike XML ile tasarım yapmayı öğrenmelisiniz bu şekilde var olanın dışına çıkıp daha komplike ve görselliği düzgün olan tasarımlar yapabilirsiniz
Farklı cihazlar arasında veri alışverişini kolaylaştırdığı için uyumsuzluk ve kopmaları engeller niteliktedir.

Örnek birkaç etiket verecek olursak genişlik,uzunluk,yükselik etiketleri XML tasarımlarımızda temez etiketlerdir bunlara daha fazlası eklenebilir ama şimdilik bu 3 örneği verdim
Sürükle-Bırak (toolbox) yöntemi çok sıradan ve var olan içerikler üzerine dayalı olduğundan dolayı bu önerilmez biz de XML tasarım yapacağız




Örnek XML Kodlarının Resmini Yukarda Belirttim, Tasarım Sırasında Bu Tip Kodlardan Yürüyeceğiz.

Layout Nedir


Oluşturduğumuz Android Projelerinde nesneleri düzenlediğimiz yani Arayüz kısmı acitivity_main.xml olarak gözükür bu Arayüz kısımlarını Layout ile tasarlarız.
Layout Android Projemizdeki res Klasörünün içindeki xml dosyalarıdır



Yukarıda Gördüğünüz Resimde Layout Sayfamız Ve Sol Tarafında İse Bahsettiğim res Dosyamız Ve activiy_main.xml Dosyaları Gözükmektedir
İsterseniz Sol Taraftan Ek Layout Dosyası Ekleyebilirsiniz.
Ben Genellikle Layout Yönlendirme İçin Kullanıyorum.

Android Tasarımında Layout bizim için yol arkadaşı olacak.
Kısmen uygulamamızın temelini burdan oluşturacağız ve burası bizim için başlangıç yeridir.
Sürükle-Bırak seçenği ile ToolBox araçlarını ekleyebilir veya XML Kısmında XML İle kodlarla araç oluşturabilirsiniz.





Layout Türleri | Linear Layout


İçeriklerin Yatay veya Dikey olarak hizalanmasıdır
android:eek:rientation="horizontal" veya "vertical" seçeneklerinden biri belirlenir bu nitelikler ile Linear Layout gerçekleştirilir

Layout Türleri | Relative Layout


Konumlandırma göreceli olarak gerçekleştirilir yani bir view'e göre başka bir view'e göre eşit hizalandırmadır
Yani A View'i B'View'i ile eşit hizalanır
Eğer A View'i B View'inin altında olsun İsterseniz
android:layout_below=id
Komutu ile gerçekleştiririz

Layout Türleri | Table Layout


Viewleri satırlara ve sütunlara gruplayan bir Layout türüdür
Kısacası Tablo oluşturmanızı sağlar

Layout Türleri | Absolute Layout


View'lerin tam konumunun belirlenmesini sağlayan Layout türüdür
Başka bir değişle kullanacağızın öğeler için nokta atışı yaptığınız, pixel pixel konum belirtip konumlandırabileceğiniz Layout türüdür

Layout Türleri | Frame Layout


Tek bir eleman olabilir ve tek te birden fazla eleman veya öğe göstermek için kullanılır
Kısmen buna çerçeve düzeni de denebilir.

Layout Türleri | Constraint Layout


Android ögelerini (toolbox) Sürükle bırak yöntemini kullanabilmemize yarar bu sayede hiç uğraşmadan kolaylıkla konumlandırma yapabiliriz.
Ek Olarak Constraint Layout kullanarak her türlü cihaza tasarım açısından uyumluluk sağlayabiliriz





Layout Nitelikleri


Bir Linear Layout Oluşturalım arkadaşlar.



Gördüğünüz gibi boyut istiyor önce
android:layout_width="" yani genişlik istiyor sonra
android:layout_height="" yani yükselik istiyor.
Linear Layout olduğu için Orieantation oluşturmak zorundayız bunu sebebi ise hizalama yatay mı yoksa dikey mi olacak Öğemiz (layout) bunu bilmeli

android:layout_width="" ayarlayalım arkadaşlar
android:layout_widht="50" YANLIŞ KULLANIM
android:layout_width="50dp" DOĞRU KULLANIM

İlla 50dp Kullanmak zorunda değilsiniz birden fazla terim vardır birden fazla boyut ayarı vardır bunlar için Ctrl-Space Basarsanız 6 terim karşısına çıkacaktır benim önerim dp kullanmanızdır.
Aynı işlemler android:layout_height="" için'de geçerlidir arkadaşlar

Biz bir tane daha layout eklersek iki layout üst üste duracaktır bunu sebebi Relative Layout olmasıdır Bunu önlemek için göreceli konumlandırma yapmamız gerekiyor

TextView id'imizi alalım ve LinearLayout bölümüne inelim
Yazmamız gereken komut
android:layout_below="Text nesnemizin id'sini yazıyoruz"
Bu sayede iki nesne de alt alta oldu

Layout'umuz şuan ekranda görünmemektedir o yüzden bir arka plan rengi tanımlayacağız arkadaşlar.
android:background="istediğimiz renk kodu"
Bu sayede eklediğimiz layout'u görebiliyoruz
Güncel Kod İçeriğimiz ise Şu Şekilde Gözüküyor






Layout'umuzun genişliği mobil cihazımızın ekran genişliğiyle aynı olsun istiyor isek hatırlarsanız
android:layout_width="50dp" yazmıştık buraya gelelim ve 50dp yi silip Ctrl-Space tuşlarına basalım.
Karşımıza 2 seçenek gelecek




match_parent - Layout Genişiği Ve Yükseliği Mobile Uyumlu Olur
Kullanımı İse Şu Şekilde ;
android:layout_height="match_parent"
android:layout_width="match_parent"




wrap_content - Layout İçerisindeki Ögelerin Boyutları Kadar Boyut Alır
Kullanımı İse Şu Şekilde ;
android:layout_width="wrap_content"
android:layout_height="wrap_content"




Sonuç olarak wrap_content neye göre hizalanıyor diyeceksiniz arkadaşlar wrap_content text_size'ye göre hizalanır
android:text_size"50dp" kendinize göre ayarlayabilirsiniz bunu



android:layout_margin >>> Kelime anlamı olan kenar boşluğudur.
Dıştan içe doğru Layout'umuzun kenar boşluğunu android:layout_margin ile ayarlayabiliriz.

Kullanımı ise kolay, RelativeLayout'a gelip android:layout_margin"50dp" veya istediğimiz bi dp ayarını veriyoruz
Veya biz sadece yukardan boşluk versin istersek bunu da;
android:layout_marginTop="50dp" komutu ile yapabiliriz sonuç olarak yukardan boşluk verecektir


android:padding="" >>> Bunun amacı da Margin gibidir ama busefer içten boşluk verirsiniz.
Kullanımı ise şu şekilde;
android:padding="50dp" yazarsanız Layout içine eklediğimiz text veya herhangi bi öge bulunduğu konumdan 50dp içeri kayacaktır




android:gravity="" >>> Diyelim ki biz içeriğimizi yani text veya başka bir ögeyi Sola,Sağa,Yukarı,Aşağı kaydırmak istiyoruz bunun içinde Gravitiy niteliğini kullanırız
Kullanımı şu şekilde;
android:gravity="center" Komutunu kullanır isek Layout içindeki ögemiz layout'un tam ortasında konumlanacaktır

Ctrl-Space Basalım karşımıza değerler geldi
android:gravity="bottom" Komutunu kullanır isek ögemiz aşağı sola gider eğer ekrana bitişik olmasını isterseniz android:padding"50dp" komutunu değiştirerek ayarlayabilirsiniz

Peki hem aşşağıya hemde sağa doğru yaslamak istersek şu komutu kullanmalıyız;
android:gravity="bottom|right" komutunu kullanırız bu sayede hem aşağıda hem de sağda konumlandı

Başka bir gravity kullanımı ise ;
android;gravity="top|right"
komutunu kullandık ve layout içindeki ögemiz üst sağ tarafta konumlandı

Ögemizi ortaya getirip sola yaslamak istersek
android:gravity="left|center"
komutu kullandık hem ortalı hem de sola konumlanmış şekilde gördük
bunu "right|center" yaparsak sağa doğru yaslı olarak konumlanır.






Ek olarak tüm yazdığımız XML Kodları ve nitelikleride alt tarafa vereceğim hepsinin anlatımını yaptık


XML Kodlarımız

<TextView
android:layout_width="50dp"
android:layout_height="50dp"
android:text="50dp"
android:textSize="50dp"

<LinearLayout
android:eek:rientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="renk kodu"
android:layout_below="itemid"
android:layout_marginTop="50dp"
android:gravity="center"
>

Konu Resimlerinin Netliğinden Dolayı Affınıza Sığınıyorum Dostlar...
Kendi Sistemimde Olmadığım İçin Böyle Bi Sıkıntı Yaşadım.
Eğitim Sürecinde Bir Sorun Yaşadığınızda Bana Telegram Veya Özel Mesaj Yoluyla Ulaşabilirsiniz Merak Ettiklerinizi Sorularınızı Sorunuz Lütfen :)

Herkese İyi Forumlar
Elinize sağlık hocam :=)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.