Androidの引き出し付きレイアウトでのNavigationViewの動的生成

840 ワード

この2,3日アプリ「儒釈道ネットラジオ」のアプリを書くときは、両側のスライド引き出しメニューを使います.最終的に公式テンプレートのソリューションを選び、DrawerLayoutとNavigationViewを2つ追加しました.
しかし、サイドスライド引き出しメニューの内容を動的に生成する必要があります.つまり、NavigationViewを修正し、次のコードでNULLを返す必要があります.
        ListView lv = (ListView) findViewById(R.id.lv_programs);
はネット上で絶えず探して、最終的に解決方法を見つけました.NavigationViewでheaderViewを取得し、headerViewからListViewを検索する必要があります.コードは次のとおりです.
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);

        View headerView = navigationView.getHeaderView(0);
        ListView lv = (ListView) headerView.findViewById(R.id.lv_programs);
は、navigationViewを動的に生成または修正する.getMenu()は、メニューを変更する場合に使用できます
navigationView.getMenu()
メニューを取得した後、メニュー内容を動的に変更します.