Фон проблемы
Я просто выбрал шаблон ящика навигации из шаблонов проекта (см. Выделенный элемент на изображении), собрал приложение и запустил его на эмуляторе (Android Nougat (v7) API 24).

Проблема
Когда я открываю меню и выбираю другой элемент не загружает новый элемент (новый фрагмент через контроллер).
Подробнее о проблеме
- Приложение запускается здесь ... ( Домашний фрагмент - первое изображение).
- Я щелкаю пункт меню галереи (2-е изображение), и домашний фрагмент все еще отображается (см. первое изображение).

Что я пробовал
Я запустил этот же проект на другом эмуляторе, работающем Android P ie и все работает как положено - Когда я щелкаю по пункту меню галереи, фрагмент галереи загружается, и я вижу «Это фрагмент галереи».
Другие вещи, которые я пробовал * 1 043 *
Я также открыл logcat, а затем щелкнул пункт меню, но ничего не отображается, даже когда у меня отключены все фильтры.
Соответствующий код шаблона
Код шаблона в MainActivity (который загружает фрагменты и контроллеры, все инициализирует) в onCreate выглядит следующим образом:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val toolbar: Toolbar = findViewById(R.id.toolbar)
setSupportActionBar(toolbar)
val fab: FloatingActionButton = findViewById(R.id.fab)
fab.setOnClickListener { view ->
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show()
}
// ###########################################################
// #### MY NOTES -- This is the relevant code ################
val drawerLayout: DrawerLayout = findViewById(R.id.drawer_layout)
val navView: NavigationView = findViewById(R.id.nav_view)
val navController = findNavController(R.id.nav_host_fragment)
// Passing each menu ID as a set of Ids because each
// menu should be considered as top level destinations.
appBarConfiguration = AppBarConfiguration(setOf(
R.id.nav_home, R.id.nav_gallery, R.id.nav_slideshow), drawerLayout)
setupActionBarWithNavController(navController, appBarConfiguration)
navView.setupWithNavController(navController)
}
Что / где я могу войти, чтобы определить, что происходит?
Можете ли вы сказать мне, почему это происходит?
Или, можете ли вы дать мне идею, где я могу поместить некоторые операторы регистрации, чтобы определить, что запускает, чтобы я мог сказать, что происходит сбой?
Обновление - дополнительная информация
Определенно что-то не так с шаблоном, потому что mobile_navigation. xml ссылается на класс, который даже не существует в проекте:

Несмотря на то, что app.actionmobile.navdraw.ui.home.HomeSecondFragment
не существует в этом проекте, приложение все еще собирается и запускается. Хм .... Не уверен, как это возможно.
К вашему сведению - это было добавлено шаблоном проекта, а не я.
Другое, что я пробовал Я установил измененную верхнюю часть mobile_navigation . xml from:
app:startDestination="@+id/nav_home"
до
app:startDestination="@+id/nav_gallery"
Протестировано, чтобы увидеть, будет ли фрагмент галереи загружаться как первый фрагмент, и это было сделано без проблем.
Повторяющаяся проблема
Опять проблема, с которой я столкнулся, заключается в том, что выбор пункта меню не загружает новый фрагмент на нуге, а на P ie. Не уверен, как платформа исправляет это ???