Bu derste Android uygulamalarında ekran nesnelerinin nasıl oluştuğunu inceleyeceğiz.
1 – Etkileşim
Windows işletim sistemi gibi Android uygulamaları da pencerelerden oluşuyor. Bu pencereler Etkileşim (Activity) olarak isimlendirilimekte. Belirli bir zaman zarfında bir Etkileşim devrededir ve ekranın tümünü kaplar. Uygulama, pencereler arasından sadece bir tanesini seçer. Örnek olarak posta uygulamasını alabiliriz. Bu uygulamada bir Etkileşim penceresi mektupların listesini içeriyor. Başka bir Etkileşim penceresi ise mektubun içeriğini gösteriyor. Üçüncüsü de ayarları gösterir.
Etkileşim penceresinin içeriği farklı nesnelerden oluşuyor. Nesnelerin ismini View olarak görüyoruz. En sık kullanılan nesneler arasında buton, metin girme alanı ve onay kutusu gibi öğeler mevcut..
View’lar bir grup içerisinde (ViewGroup) toplanabilirler. En sık rastlanan View Group, Layout‘tur. Layout farklı türlerde olabilir ve View’larin ekranda hangi pozisyonu alacağını belirler (mesela ortada, solda,aşağıda). Daha ayrıntılı öğrenmek için bu kaynaklara göz atabilirsiniz:User Interface ve Common Layout Objects.
2 – Proje ( Activity ve main.xml)
Şimdi yeni öğrendiğiklerimiz daha ayrıntılı inceleyelim. İlk önce yeni bir proje açalım veya daha önce yaptığımız projeyi de kullanabilirsiniz. Mesela aşağıdaki gibi bir proje yapabilirsiniz.
- Project name / Proje adı: VitioksApp
- Build Target / Hedef sürüm: Android 4.2
- Application name / Uygulama adı: VitioksApp
- Package name / Paket adı: tr.example.vitokapp
- Create Activity / Etkileşim Adı: activity_main
Projemizde bizi ilgilendiren res > layout > activity_main.xml
Layout penceresi – Burada kullanacağımız View’ların (nesnelerimiz) nerede olacaklarını belirleyebiliriz ve ekranda hangi nesnelerin olacağını seçebiliriz. Uygulamayı açtığımızda Activity bu dosyayı (main.xml) okuyor ve daha önce yaptığımız ayarları gösteriyor. Bu dosyayı açalım ve hangi varsayılan View’ların mevcut olup olmadıklarına bakalım.
Solda gruplara bölünen View listesini görüyoruz. Burada projenizde tüm uygulanabilen View-elementlerini seçebilirsiniz.
View’un görünümünü de değiştirebilirsiniz:
Beyaz ekrana bakalım. Burada “Hello World” satırını görüyorsunuz. Hangi View’un olduğunu öğrenmek için bu satıra tıklayalım.
Sağda Outline sekmesinde activity_main.xml dosyasında tüm var olan elementleri görebiliriz.
Seçtiğimiz “Hello wolrd” satırı TextView’e ait. TextView RelativeLayout’un alt kısmında yer alıyor. RelativeLayout daha önce gördüğümüz ViewGroup’tur. Şimdi birkaç yeni element ekleyelim. Bu elementler Button ve CheckBox olsunlar. Elementi eklemek için soldan elementi seçip beyaz ekrana taşımak gerekiyor. Veya RelativeLayout’ta Outline sekmesine taşıyabilirsiniz. Text Fields grubundan Plain Text isimli bir nesne daha seçelim. Outline sekmesinde button1, checkBox1 ve editText1 isimli ViewGroup’ları görebilirsiniz. Bu isimler ID’dir ve otomatik olarak verilir.
Şimdilik onları bırakalım, gelecekte onlarla daha dikkatli ilgileneceğiz. Şimdi beyaz ekranımızda birkaç tane element mevcut. Bunların üzerindeki yazıları değiştirelim. Outline sekmesinde TextView’e basalım. Şimdi bize gerekli olan Properties isimli sekme. Outline sekmesinin aşağısında bu sekmeyi bulabilirsiniz. Properties sekmesinden Text özelliği bulalım. Orada etkileşim penceresine yerleştirdiğimiz metin kutusu için sabit bir bir link vardır. Bu sabit isimlerin nerede belirleyeceğimizi gelecek derslerde öğreneceğiz. Şimdi buraya bir şey yazalım:
Aynı şekilde button1, checkBox1 ve editText1 için de yapalım. Tüm değişiklikler activity_main.xml dosyasına kaydedilmektedir. Şimdi dosyayı kaydedelim (CTRL+SHIFT+S) ve emülatörü çalıştıralım (CTRL+F11).
Uygulama bize MainActivity penceresini gösteriyor. MainActivity, bilgileri activity_main.xml’den okuyor ve View’lar XML’den çektiği bilgiyi kullanıcıya gösteriyor.
Bu derste Android application ekranında nelerin mevcut olduğunu öğrendik. Layout’un oluşması ve Layout’ta View’ların eklenmesi öğrendiğimiz başka bir yenilik. View’ların özelliklerinin ayarlanması ve değişebilmesi ise öğrendiğimiz üçüncü bir yenilik.
Gelecek derste layout-dosyasını XML olarak inceleyeceğiz ve Activity’nin hangi layout’u çalıştırması gerektiğini öğreneceğiz.