android динамически добавлять описания верхнего уровня - PullRequest
0 голосов
/ 27 апреля 2020

У меня проблема в том, что я хочу динамически добавлять места назначения верхнего уровня в мое приложение или, по крайней мере, отображать значок ящика на этих фрагментах

В настоящее время у меня места назначения верхнего уровня определены так:

val drawerLayout: DrawerLayout = findViewById(R.id.drawer_layout)
val navView: NavigationView = findViewById(R.id.nav_view)
val navController = findNavController(R.id.nav_host_fragment)

appBarConfiguration = AppBarConfiguration(setOf(R.id.nav_all_images, R.id.nav_favourites), drawerLayout)
setupActionBarWithNavController(navController, appBarConfiguration)
navView.setupWithNavController(navController)

Я хочу динамически добавлять места назначения в категории. когда я добавляю их следующим образом:

val s = navView.menu.addSubMenu("Test")
val m = s.add("Category 1")
m.setOnMenuItemClickListener {
    navController.navigate(AllImagesFragmentDirections.listToDetail())
    drawerLayout.closeDrawers()
    return@setOnMenuItemClickListener true
}

он открывается, но с кнопкой возврата.

можно ли отобразить значок ящика / ящик на этих местах назначения?

1 Ответ

0 голосов
/ 27 апреля 2020

Хорошо, я нашел решение, которое работает для меня. я добавил новый фрагмент и добавил его в набор в AppBarConfiguration. В слушателе щелчка я перехожу непосредственно к фрагменту navcontroller.navigate(R.id.fragmentname), поскольку он находится в местах назначения верхнего уровня, он покажет ящик

...