Android Dersleri

Android Dersleri 19 : TabHost ile Tab Seklemeleri Oluşturma

Merhaba arkadaşlar. Daha önceki yazılarımda, ekranın alt kısmında menülerin oluşturulmasını anlatmıştım. Şimdi de üst kısımda bir nevi menü görevi yapan tab sekmelerinden bahsedeceğim. Bu işlemi, tabhost aracılığıyla yapıyoruz.

İlk olarak bir proje oluşturalım ve gelen sayfamızın xml dosyasına şu kodları yazalım.

Burada, sayfamızın üstteki paneli için bir tab panel yaptık ve sayfayı yatay olarak kaplamasını sağladık. Bunu yazdıktan sonra activity_main.xml dosyamızın görünümü şu şekilde olacaktır.

Burada soldaki gibi sayfa1 ve sayfa2 adında 2 sayfa ekleyelim ve bunları birbirine bağlayalım. Daha sonra manifest dosyamıza gelelim ve bunları tanıtalım. Eklememiz gereken kod aşağıda dikdörtgen içine alınan koddur.

Bunları yaptıktan sonra sayfa1 ve sayfa2 java dosyalarının içine yazılması gereken kodu verelim.

Burada sadece bağlamaları yaptık. Bu sayfalara karşılık gelen xml dosyalarını yani sayfanın kendisini de gösterelim. Ben bunların sayfalarına aşağıdaki gibi birer textview ekledim.

Yapmamız gereken son işlem kaldı. Burada da MainActivity.java dosyasını kodlayacağız. Burada tüm tab işlemlerini yapacağız. Tab’larımıza resim koyacağız. Şimdi bunu kodlayalım ve anlatalım.

İlk olarak bir icon oluşturun ve bunu soldaki panelden drawable-hdpi klasörüne sürükleyip bırakın. Ben bir tane oluşturdum ve bu klasöre attım.

1 => Burada sınıfımızı Activity değil TabActivity sınıfından extends etmemiz gerekiyor.

2 => Burada java dosyamızı, xml sayfamıza bağladık.

3 => Burada bir tabhost nesnesi oluşturduk ve id‘si ile bağladık.

4 => Burada 2 adet TabSpec nesnesi oluşturduk. Bunlar, yukarıda çıkacak olan tablarımızdır. Burada tırnak içindeki isimler, manifest içindeki isimlerdir.

5 => Burada bir nevi tab’ları, sayfaları ile ilişkilendirdik. Buradaki ilk parametre, tab’ın ismidir. Drawable parametresinde de iconumuzu belirttik.

6 => Burada son olarak bu tab1 ve tab2 nesnelerini, tab panel’e ekledik.

Ekran Görüntüleri

Bu derste de tab’ların kullanımını anlattım. Diğer derslerde görüşmek üzere.

Mehmet Kirazlı

İstanbul Eyüp'te ikamet ediyorum. Giresun Alucra'lıyım. Bilgisayar Mühendisliği bölümünden 2013 yılında mezun oldum. "Yeni Başlayanlar için Java 8" kitabının yazarıyım. Şu anda özel bir firmada Mobil Yazılım Geliştirme Uzmanı olarak çalışıyorum.

Yorumları Göster

  • Merhaba Mehmet,

    Tebrik ederim yazıların gayet güzel. Fakat belirtmek isteyerim ki TabHost deprecated oldu. Onun yerine aynı görevi gören ve biraz daha kullanışlı olan FragmentTabHost kullanmanı öneririm.

    İyi çalışmalar.

  • Merhaba,

    Konuyla ilgili bir sorum olacak. Anasayfadan tab lı sayfaya geçişte istediğimiz tab sekmesini ekrana nasıl getirebiliriz?

    Teşekkürler
    Kolay gelsin.

  • Merhaba,
    Gayet anlaşılır ve yararlı bir paylaşım olmuş teşekkürler.

    Yalnız bir sorum olacak. Android te oluşturduğum tab uygulamasını aynı ölçüt ve içerikle PC tarafındada oluşturup bu tabları pc tarafından yönetmek istiyorum. Yani mesela java kullanarak oluşturduğum aynı içerikli uygulamada bir tab a tıkladığımda, androidte de eş zamanlı bir algılama olsun. Bunu nasıl gerçekleştirebilirim? Bu konu hakkında önerebileceğiniz herhangi bir kaynak var mı?

    Yardımcı olursanız çok sevinirim.

Son Gönderiler

Android Firebase Event (not set) Hatası Çözümü

Merhaba. Firebase Events'e istatistik attığınızda not set şeklinde bir değer görüyorsanız olası çözümünü göstereceğim. (daha&helliip;) Daha Fazla Oku

% gün önce

Namaz Vakitleri Uygulaması Yayında

Merhaba. Android cihazlar için hazırladığım Namaz Vakitleri uygulaması ile 200'e yakın ülkede tüm namaz-ezan vakitlerini… Daha Fazla Oku

% gün önce

Kaza Namazı ve Oruç Takip Uygulaması

Selamlar. İnsanlar için faydalı olması amacıyla geliştirdiğim Kaza Namazı ve Oruç Takip Uygulamasını sizlere tanıtmak… Daha Fazla Oku

% gün önce

Android Volley Kullanımı ve JSON Parse İşlemleri

Volley, Android uygulamalarımızda kullandığımız AsyncTask'ın alternatifi olarak ortaya çıkarılan, Google I/O 2013 sunumunda duyurulan bir… Daha Fazla Oku

% gün önce

Android ButterKnife Kütüphanesi Kullanımı

Merhaba. Bu yazımda Android platformunda kullanıma sunulan, bazı kod bloklarını basitleştiren ve okunabilirliği arttıran ButterKnife… Daha Fazla Oku

% gün önce

Admob TikTok Reklamları Engelleme

Merhaba. Bu yazımda artık baş belası olmuş TikTok reklamlarını, Android uygulamalarımızdaki Admob reklamlarından nasıl kaldıracağımızı… Daha Fazla Oku

% gün önce