How to inflate android NavigationView with another menu dynamically during onClick?

前端 未结 2 1104
谎友^
谎友^ 2020-12-31 17:05

Hi I have a NavigationView and there is an imageview in the headerview of that NavigationView. When I click on the imageview , NavigationView should inflate another menu res

相关标签:
2条回答
  • 2020-12-31 17:13

    try the following code

    imgIndic.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {      
            navView.getMenu().clear();
            navView.inflateMenu(R.menu.second_menu);
        }
    }); 
    
    0 讨论(0)
  • 2020-12-31 17:21

    I would suggest to inflate just one menu with several groups and change the visibility of the groups. Simple and effective.

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

    In your java code call

    navigationView.getMenu().setGroupVisible(R.id.group_1, true)
    
    0 讨论(0)
提交回复
热议问题