Я использую компонент архитектуры навигации, и у меня есть настройка, аналогичная этой для выталкивания стека при переходе к определенному фрагменту:
<action
android:id="@+id/navigate_to_main_screen"
app:destination="@id/fragment_main_screen"
app:popUpTo="@+id/navigation_main"
app:popUpToInclusive="true"/>
Это работает почти какожидается.Кнопка «Назад» и значок «вверх» на панели приложения не переходят к предыдущему фрагменту.Кнопка возврата системы выходит из приложения.
Однако кнопка «вверх» на панели приложения все еще находится там, щелкнув по ней, вы ничего не сделаете, как ожидалось.Что я делаю неправильно?Почему это все еще здесь?
В основной деятельности у меня уже есть
AppBarConfiguration config =
new AppBarConfiguration.Builder(navController.getGraph()).build();
NavigationUI.setupActionBarWithNavController(this, navController, config);
и
@Override
public boolean onSupportNavigateUp() {
return navController.navigateUp() || super.onSupportNavigateUp();
}
Согласно документации .
Используемая версия библиотеки:
implementation 'android.arch.navigation:navigation-fragment:1.0.0-alpha09'
implementation 'android.arch.navigation:navigation-ui:1.0.0-alpha09'