2015-07-03 13 views
9

Merhaba Navigasyon Görünümüm var ve bu Navigasyon Görünümü'nün headerview'inde bir görüntü görüntüsü var. Görüntüye tıkladığımda, NavigationView başka bir menü kaynak dosyasını şişirmeli ve PlayStore uygulamasında olduğu gibi mevcut menüyü değiştirmelidir.AndroidViewView, onClick sırasında dinamik bir şekilde başka bir menü ile android nasıl açılır?

imgIndic.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View view) { 
     Log.e("Onclick","Arrow click"); 
     navigationView.inflateMenu(R.menu.second_menu); 
    } 
}); 

Ama butonuna tıkladığımda hiçbir şey olmuyor:

Bu denedim! (Log Onclick logcat'te görünür) Bunu nasıl yapabilirim?

cevap

18

imgIndic.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View view) {  
     navView.getMenu().clear(); 
     navView.inflateMenu(R.menu.second_menu); 
    } 
}); 
+1

Çalıştı! Teşekkürler! Şimdi üst üste 2 kez bana çözüm verdin! :) –

+0

oh evet hatırlıyorum .. birincisi menuitem metin rengindedir ... lolz – Moinkhan

8

Birkaç grupla sadece bir menüyü şişirmeyi ve grupların görünürlüğünü değiştirmeyi öneririm. Basit ve etkili. java kodu görüşmesinde

<group 
    android:id="@+id/group_1" 
    android:checkableBehavior="single" 
    android:visible="false"> 
    ... 
</group> 

<group 
    android:id="@+id/group_2" 
    android:checkableBehavior="single" 
    android:visible="true"> 
    ... 
</group> 

navigationView.getMenu().setGroupVisible(R.id.group_1, true) 
+0

Bu seferki durum için çalıştı aşağıdaki kodu deneyin! +1 oy! Başka bir menüyü dinamik olarak şişirmek için çözüm öneren @moinkhan'ın yanıtını kabul etmek. :) –

İlgili konular