android-studio-logo

İlk Uygulama

Mobil Uygulama Geliştirme Ders Notları [Java]

# Proje Oluşturma

android-studio-logo

Bu rehberde Android Studio Meerkat // 2024.3.1 sürümü kullanılmaktadır.

Önce projenizin klasörünü oluşturup ismini verin.
Örnek: ilk-uygulama

Android Studio'yu açın:

New Project:

yeni-proje-olusturma

Başlangıç için Empty Views Activity (Boş Aktivite) şablonunu seçelim. Bu şablon, temel bir Android uygulaması yapısı sunar ve üzerine inşa etmek için idealdir.

Daha sonra açılan pencerede:

yeni-proje-olusturma

Name: Proje adını girin.
Örnek: İlk Uygulama

Package Name: Package name, uygulamanızı tanımlayan ve diğer uygulamalardan ayıran benzersiz bir isimdir. Bu kısmı değiştirmenize gerek yok. Bu kısım Proje Adınızın boşluk ve Türkçe karakterlerden arınmış haliyle formatlanır.

Save Location: Projenizin oluşturulacağı konum. Projeniz için oluşturduğunuz klasörü seçin.

Language: Projeyi kodlarken kullanacağımız dili seçtiğimiz kısım. Burada Java seçin.

Minimum SDK: Uygulamanızın çalışması için gereken en düşük Android sürümünü belirtir. SDK sürümünü API 33 ("Tiramisu"; Android 13.0) seçelim.

SDK ne kadar düşük seçilirse o kadar telefonu destekler.
Detaylar için Help me choose linkine tıklayabilirsiniz.

Help-me-choose

Bu grafik, seçtiğiniz minimum SDK seviyesine göre uygulamanızın ulaşabileceği Android cihazların yüzdesini gösterir.
Bu şekilde, daha düşük bir SDK seçmek daha fazla cihazda çalışmasını sağlarken, yüksek bir SDK seçmek daha yeni özelliklere erişim sağlar ancak daha az cihazda çalışır.
Daha yeni bir SDK ile çalışmak daha yeni özellikleri kullanmak anlamına gelir. Örneğin Galeri Erişim İzni gibi servisler her sürümde daha detaylandırıldı.

Build Configuration Language: Projenin yapılandırma sürecini tanımlamak için kullanılacak dili Java seçtiğimiz için bunu Groovy seçelim.

Tüm ayarları yaptıktan sonra Finish butonuna tıklayın.

⚠️ Android Studio, Gradle ile projeyi derleyecektir. Bu biraz zaman alabilir, sabırlı olun.

Bu süreçte, gerekli dosyaları oluşturur, kütüphaneleri indirir ve projeyi yapılandırır. Alt kısımda bir ilerleme çubuğu göreceksiniz. İşlem tamamlanana kadar bekleyin.

MainActivity.java

Proje oluşturma tamamlandıktan sonra, Android Studio'nun ana ekranına yönlendirileceksiniz. Burada, projenizin dosya yapısını göreceksiniz. En önemli klasörler şunlardır:


Proje yüklendikten sonra iki tane sekme açık gelecek:

MainActivity.java

MainActivity.java : Java kodlarını yazacağımız kısım.

activity_main.xml

activity_main.xml : Ekran tasarımını yapacağımız yer.


# Android Studio UI (Kullanıcı Arayüzü) bileşenleri

Android Studio'da UI (Kullanıcı Arayüzü) bileşenleri, kullanıcıyla etkileşime geçmek ve uygulamanın görsel öğelerini oluşturmak için activity_main.xml'de kullanılan bileşenlerdir.

# Layout

android-layout

Layout: Uygulamanın kullanıcı arayüzünü (UI) tanımlayan ve ekran üzerindeki elemanların (butonlar, metinler, görseller vb.) nasıl düzenleneceğini belirleyen bir yapıdır.

palette

Ekranda görünecek elemanlar (butonlar, metinler, görseller vb.) Palette penceresinden sürükle bırak yöntemiyle eklenir.

Kısa kısa özetleyecek olursak:

TextView: Ekranda metin göstermek için kullanılır.

Button: Kullanıcının tıklayabileceği düğme oluşturur.

ImageView: Resim veya grafik görüntülemek için kullanılır.

EditText: Kullanıcının metin girmesine olanak tanır (giriş alanı).

CheckBox: Seçim yapılabilen kutu (evet/hayır seçenekleri).

RadioButton: Bir grup seçenek arasından yalnızca birini seçmeye yarar.


Design ekranında varsayılan olarak ConstraintLayout adında bir Layout içinde bir TextView eklenmiş olarak gelir.

Design ekranındaki her bileşen (örneğin, butonlar, metin kutuları, görseller vb.) XML içinde belirli bir etiket ile tanımlanır.

xml-kodlarini-gosterme

activity_main.xml in kod görünümünü açmak için görseldeki butona tıklayın.

                          
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>            

            
          

Bu kodlarda ConstraintLayout içinde bir TextView var olduğunu görüyoruz.

Burada bilmemez gereken kodlar:

ConstraintLayout için:

android:id="@+id/main": Bu, ConstraintLayout'a bir kimlik (ID) atar. Bu ID, diğer UI öğelerinden veya Java kodundan bu layout'a erişmek için kullanılabilir. "@+id/main" ifadesi, "main" adında yeni bir ID oluşturur.

android:layout_width="match_parent": Bu, layout'un genişliğinin ekranın genişliğiyle eşleşeceğini belirtir. match_parent, öğenin tüm mevcut alanı kaplamasını sağlar.

android:layout_height="match_parent": Bu, layout'un yüksekliğinin ekranın yüksekliğiyle eşleşeceğini belirtir.



TextView için:

android:layout_width="wrap_content": Bu, TextView'in genişliğinin içeriğine (metne) göre ayarlanacağını belirtir.

android:layout_height="wrap_content": Bu, TextView'in yüksekliğinin içeriğine (metne) göre ayarlanacağını belirtir.

android:text="Hello World!": Bu, TextView'da görüntülenecek metni "Hello World!" olarak ayarlar.

app:layout_constraintBottom_toBottomOf="parent": Bu, TextView'in alt kenarının, ana layout'un (ConstraintLayout) alt kenarına bağlı olduğunu belirtir.

app:layout_constraintEnd_toEndOf="parent": Bu, TextView'in sağ kenarının, ana layout'un (ConstraintLayout) sağ kenarına bağlı olduğunu belirtir.

app:layout_constraintStart_toStartOf="parent": Bu, TextView'in sol kenarının, ana layout'un (ConstraintLayout) sol kenarına bağlı olduğunu belirtir.

app:layout_constraintTop_toTopOf="parent": Bu, TextView'in üst kenarının, ana layout'un (ConstraintLayout) üst kenarına bağlı olduğunu belirtir.

Bu dört kısıtlama, TextView'in hem yatay hem de dikey olarak ana layout'un ortasında konumlanmasını sağlar.

Bu XML kodu, ekranın ortasında "Hello World!" metnini görüntüleyen basit bir düzen tanımlar. ConstraintLayout, metni ekranın ortasına yerleştirmek için kısıtlamaları kullanır. Bu, uygulamanızın farklı ekran boyutlarında ve çözünürlüklerinde tutarlı bir şekilde görünmesini sağlar.

Eğer (constraints) kısıtlamalar olmasaydı Palette den ekrana koyduğunuz her UI elemanı uygulama çalıştırılınca cihazın sol üst köşesinde yer alırdı.













Yorum Yap:

Henüz yorum yok...