Как скрыть панель действий в некоторых фрагментах с Android Компоненты навигации? - PullRequest
1 голос
/ 20 апреля 2020

Я использую android компоненты навигации для навигации по фрагментам. Я могу легко установить панель действий, используя этот код в Основном действии:

    NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
    NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);

Но если я хочу скрыть supportActionbar в некоторых фрагментах, то какой подход должен быть лучшим?

1 Ответ

1 голос
/ 20 апреля 2020

Для фрагментов, которые вы хотите скрыть SupportActionBar, вы можете скрыть его в onResume() с помощью .hide() и показать его снова в onStop() с помощью .show()

@Override
public void onResume() {
    super.onResume();
    ActionBar supportActionBar = ((AppCompatActivity) requireActivity()).getSupportActionBar();
    if (supportActionBar != null)
        supportActionBar.hide();
}

@Override
public void onStop() {
    super.onStop();
    ActionBar supportActionBar = ((AppCompatActivity) requireActivity()).getSupportActionBar();
    if (supportActionBar != null)
        supportActionBar.show();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...