Android Bottom Navi With Fragment

Android’de Alt Navigasyon Çubuğu ile Fragment Kullanımı

Android uygulamalarında, kullanıcıların uygulama içindeki farklı bölümler arasında kolayca gezinmelerini sağlamak için alt navigasyon çubukları yaygın olarak kullanılır. Alt navigasyon çubukları, ekranın alt kısmında bulunan ve her biri farklı bir fragmanı temsil eden bir dizi düğme içerir.

Fragmentler, Android uygulamalarında kullanıcı arayüzünü modüler bileşenlere ayırmak için kullanılan yeniden kullanılabilir kod parçalarıdır. Her fragment, kendi görünümüne, mantığına ve yaşam döngüsüne sahiptir. Alt navigasyon çubukları ile fragmentleri kullanarak, kullanıcıların uygulama içindeki farklı bölümler arasında sorunsuz bir şekilde geçiş yapmalarını sağlayabilirsiniz.

Alt Navigasyon Çubuğu Oluşturma

Bir alt navigasyon çubuğu oluşturmak için BottomNavigationView sınıfını kullanabilirsiniz. Bu sınıf, her biri bir fragmanı temsil eden bir dizi öğe içeren bir görünüm sağlar. Öğeler, metin, simgeler veya her ikisinin bir kombinasyonu ile özelleştirilebilir.

xml
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
app:menu="@menu/bottom_navigation_menu">
</com.google.android.material.bottomnavigation.BottomNavigationView>

bottom_navigation_menu.xml dosyası, alt navigasyon çubuğundaki öğeleri tanımlamak için kullanılır:

“`xml



“`

Fragmentleri Alt Navigasyon Çubuğuna Bağlama

Alt navigasyon çubuğundaki öğeler, fragmentlere bağlanmalıdır. Bunu yapmak için NavController sınıfını kullanabilirsiniz. NavController, fragmentler arasında gezinmeyi yönetmek için kullanılan bir nesnedir.

kotlin
val navController = findNavController(R.id.nav_host_fragment)

nav_host_fragment kimliği, fragmentlerin gösterileceği fragment kapsayıcısının kimliğidir.

Her alt navigasyon çubuğu öğesi için bir NavigationUI.onNavDestinationSelected() yöntemi çağrısı kullanarak bir dinleyici ayarlayabilirsiniz. Bu dinleyici, öğe seçildiğinde çağrılır ve NavController‘a fragmanı göstermesi söylenir.

kotlin
BottomNavigationView.OnNavigationItemSelectedListener { item ->
when (item.itemId) {
R.id.home -> {
navController.navigate(R.id.homeFragment)
return@OnNavigationItemSelectedListener true
}
R.id.profile -> {
navController.navigate(R.id.profileFragment)
return@OnNavigationItemSelectedListener true
}
}
false
}

Fragmentlerin Alt Navigasyon Çubuğuna Tepki Vermesi

Fragmentler, alt navigasyon çubuğundaki değişikliklere tepki verebilir. Bunu yapmak için onViewCreated() yönteminde NavController‘a bir gözlemci ekleyebilirsiniz.

“`kotlin
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)

navController.addOnDestinationChangedListener { _, destination, _ ->
    when (destination.id) {
        R.id.homeFragment -> {
            // Ana Sayfa fragmenti gösterildiğinde yapılacak işlemler
        }
        R.id.profileFragment -> {
            // Profil fragmenti gösterildiğinde yapılacak işlemler
        }
    }
}

}
“`

Faydalı Kaynaklar


Yayımlandı