Как сделать так, чтобы кнопка «Назад» для фрагмента настроек перешла на стартовый фрагмент с помощью aac - PullRequest
0 голосов
/ 13 февраля 2019

Итак, у меня проблема с навигацией AAC.У меня есть несколько фрагментов в одной деятельности.Я раздуваю пункты меню в MainActivity, чтобы у каждого фрагмента был доступ к пункту меню, который открывает настройки.Проблема в том, что каждый раз, когда я нажимаю кнопку «Назад» на фрагменте, он не возвращается к фрагменту, который его запустил.Это восходит к первоначальному фрагменту.Есть ли способ убедиться, что это поведение гарантировано?Спасибо

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Если вы вызываете фрагмент по идентификатору пункта меню, сделайте это в своей деятельности, как показано ниже. Это решит вашу проблему.

override fun onOptionsItemSelected(item: MenuItem): Boolean {
    return NavigationUI.onNavDestinationSelected(item,navController) || super.onOptionsItemSelected(item)
}

И ваш пункт меню:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
  xmlns:app="http://schemas.android.com/apk/res-auto">
<item
        android:id="@+id/settingsFragment"
        android:title="Settings"
        android:menuCategory="secondary"
        app:showAsAction="never" />

MenuCategory = "Secondary" не выскочит обратно в стек для начала назначения.

0 голосов
/ 13 февраля 2019

Вы должны использовать FragmentManager и добавить фрагмент в BackStack.

Я рекомендую взглянуть на этот пост: Вернуться к предыдущему фрагменту

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...