Android Bottom Navigation Bar Change Menu Programmatically

Android Alt Navigasyon Çubuğunda Menü Programatik Olarak Değiştirme

Android uygulamalarında, kullanıcıların uygulama içindeki farklı bölümlere kolayca erişmelerini sağlamak için alt navigasyon çubukları yaygın olarak kullanılır. Ancak, bazen uygulamanın çalışma zamanında alt navigasyon çubuğundaki menü öğelerini programatik olarak değiştirmeniz gerekebilir. Bu makale, Android’de alt navigasyon çubuğundaki menüyü programatik olarak nasıl değiştireceğinizi adım adım açıklayacaktır.

Alt Navigasyon Çubuğu Oluşturma

İlk adım, bir alt navigasyon çubuğu oluşturmaktır. Bunu XML düzen dosyanıza aşağıdaki kodu ekleyerek yapabilirsiniz:

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" />

Burada, bottom_navigation_menu alt navigasyon çubuğunda görüntülenecek menü öğelerini tanımlayan bir XML menü dosyasıdır.

Menü XML Dosyası Oluşturma

bottom_navigation_menu XML menü dosyası, her bir menü öğesi için bir MenuItem öğesi içermelidir. Örneğin, aşağıdaki XML dosyası üç menü öğesi tanımlar:

“`xml




“`

Menü Öğelerini Programatik Olarak Değiştirme

Alt navigasyon çubuğundaki menü öğelerini programatik olarak değiştirmek için BottomNavigationView sınıfının getMenu() yöntemini kullanabilirsiniz. Bu yöntem, menü öğelerini içeren bir Menu nesnesi döndürür. Menü öğelerini değiştirmek için Menu nesnesinin add(), remove() ve clear() yöntemlerini kullanabilirsiniz.

Örneğin, aşağıdaki kod bir menü öğesi ekler:

java
Menu menu = bottomNavigationView.getMenu();
menu.add(Menu.NONE, R.id.new_item, Menu.NONE, "Yeni Öğe");

Aşağıdaki kod bir menü öğesini kaldırır:

java
Menu menu = bottomNavigationView.getMenu();
menu.removeItem(R.id.old_item);

Aşağıdaki kod tüm menü öğelerini temizler:

java
Menu menu = bottomNavigationView.getMenu();
menu.clear();

Örnek Uygulama

Alt navigasyon çubuğundaki menü öğelerini programatik olarak değiştirmenin nasıl çalıştığını gösteren bir örnek uygulama aşağıda verilmiştir:

“`java
public class MainActivity extends AppCompatActivity {

private BottomNavigationView bottomNavigationView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    bottomNavigationView = findViewById(R.id.bottom_navigation);

    // Menü öğesi ekleme
    Menu menu = bottomNavigationView.getMenu();
    menu.add(Menu.NONE, R.id.new_item, Menu.NONE, "Yeni Öğe");

    // Menü öğesi kaldırma
    menu.removeItem(R.id.old_item);

    // Tüm menü öğelerini temizleme
    menu.clear();
}

}
“`

Faydalı Kaynaklar


Yayımlandı