Итак, я пытаюсь динамически добавить некоторый контент в свой навигационный ящик. В принципе работает. Я могу добавлять элементы в свое приложение и отображать их в панели навигации. Единственная проблема в том, что мне нужно перезапустить приложение, чтобы новые вещи в навигационном ящике всплывали (потому что я могу заставить код работать только в методе onCreate), что не является желаемым поведением.
Вот что у меня есть в методе onCreate на данный момент:
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
Menu menu = navigationView.getMenu();
MenuItem it1 = menu.add(R.id.group1, 1, 2, "TEST DYNAMIC");
Очень простой, но он делает то, что я хочу. Он добавляет в меню заголовок «тест».
Я хочу иметь возможность доступа к этому фрагменту кода по желанию, например, когда я нажимаю кнопку. Сам я этого сделать, к сожалению, не смог. Неважно, находится ли он в методе в MainActivity или в одном из других моих фрагментов, но он не должен запускаться только при создании MainActivity, этого недостаточно. Кроме того, мне, вероятно, понадобится перерисовать навигационный ящик после добавления к нему чего-то (я предполагаю), но я тоже не знаю, как это сделать, поэтому любая помощь в этом была бы отличной.