Merhaba arkadaşlar bugün ki yazımızda Android uygulamalarımızda birden fazla ekran kullanmayı göreceğiz.
Bildiğiniz gibi tek sayfa kullanılarak yazılmış uygulama bulmak neredeyse imkansız. Uygulama geliştirirken çeşitli işlemler için kullanıcıya farklı ekranlar farklı arayüzler sunmamız gerekebiliyor o yüzden bugün bu yazımı yazıyorum.
Evet arkadaşlar yeni bir sayfa oluşturmak için öncelikle yeni bir “Activity” oluşturmamız gerekiyor. Bunu yapmak için Android Studio da ekranın sol tarafında bulunan dosyalardan “java” klasörüne faremizle sağ tık yapıp sırasıyla “new/activity” seçeneklerini seçip ardından kullanmak istediğimiz “Ekranı” seçiyoruz ve daha sonra yeni ekranımıza bir isim veriyoruz.
.
Yeni ekranımızı ekledik burada da tıpkı yeni projeye başladığımız zaman varsayılan olarak gelen ekran gibi istediğimiz işlemi yapabilmekteyiz.
Şimdi ise varsayılan olarak gelen ekranımıza bir buton ekleyeceğiz ve bu buton ile 2. eklediğimiz ekrana geçeceğiz.
Bunun için ilk ekranın “java” dosyasın da bir intent oluşturup butona tıklayınca bu intenti tetikleyip yeni ekranın açılmasını sağlıyoruz. Gelin şimdi ilk ekranımıza bir buton yerleştirip buna tıklandığı zaman intent oluşturalım.
Yukarıda ki resimde olduğu gibi ekrana bir adet buton yerleştirdim.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<RelativeLayout android:layout_height="match_parent" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="İleri" android:id="@+id/btnİleri" android:layout_centerVertical="true" android:layout_centerHorizontal="true" /> </RelativeLayout> |
xml dosyasının kodu da yukarı da olduğu gibidir. Ekrana buton yerleştirdiğimize göre şimdi bu butonu java dosyamızla ilişkilendirelim ve tıklanma olayını ele alalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Button btnİleri; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnİleri=(Button)findViewById(R.id.btnİleri); btnİleri.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Yeni ekranı göstermek için işlemlerimizi burada yapacağız. } }); } |
Yukarıda ki kodlarda gördüğünüz gibi “btnİleri” adında bir buton nesnesi oluşturduk ve bunu xml dosyamızdaki “btnİleri” adındaki butonumuzla ilişkilendirdik ve daha sonra bu butona tıklanma olayını ele aldık şimdi ise o tıklanma olayının içine yeni ekranımızı nasıl ekranda görüntüleyeceğimizi yazacağız.
1 2 3 4 |
Intent ıntent=new Intent(MainActivity.this,ikinciEkran.class); startActivity(ıntent); |
Yukarıda ki kod satırıyla bir “intent” oluşturuyoruz ve bu intentin çalışacağı ekranı ve gideceği ekranı parametre olarak veriyoruz. Ben ilk parametre olarak “MainActivity.this” parametresini verdim bunun sebebi ilk açılan ekran burası ve intent bu ekrandan ikinci sayfaya gidecek olmasıdır. İkinci parametre olarak “ikinciEkran.class” parametresini vermişim bun sebebi ise yeni oluşturduğum ekranın ismi “ikinciEkran”olmasıdır. Daha sonra bu intenti başlatmak için “startActivity” yazıp parametre olarak oluşturduğumuz intenti veriyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Button btnİleri; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnİleri=(Button)findViewById(R.id.btnİleri); btnİleri.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent ıntent=new Intent(MainActivity.this,ikinciEkran.class); startActivity(ıntent); } }); } |
Java dosyasının son hali yukarıda ki gibi olmaktadır. sizde benim gibi bu kodları yazdıysanız uygulama ilk açıldığı zaman ekranda sadece bir buton olacaktır o butona tıklayınca 2. ekrana geçecektir. Bu şekilde onlarca ekran oluşturup bunlar arasında istediğimiz gibi geçiş yapabiliriz.
bu ikinci activity’ ye geçtiğinde geriye dönebilmek için action bar’a geri butonu nasıl koyabiliriz…?
Merhaba Ferit Bey. Buradan kısaca anlatmak yerine bugün dediğiniz konu ile ilgili yazı yayınlayacağım orada detaylı bir şekilde anlatırım.
MANİFESTTE EKLEME YAPMAMIZ GEREKİYO MU
Merhaba Ferit Bey. Yazıda anlattığım gibi hareket ederseniz otomatik olarak manifest dosyasına ekenecektir yeni yarattığınız activity yani sizin eklemenize gerek kalmıyor.
[…] önceki yazımda sayfalar arası geçişi anlatmıştım orada sayfalar arasında geçiş sağlamak için […]