Использование setSupportActionBar() останавливает кнопку гамбургера при открытии панели навигации

Я только начал работу над небольшим небольшим приложением и хотел бы изменить Toolbar название фрагмента, который пользователь выбрал в навигационном ящике, однако при установке Toolbar В качестве панели действий можно использовать:

getSupportActionBar.setTitle("[insert category here]") 

Кнопка гамбургера на панели инструментов перестает открывать навигационный ящик при нажатии. (Вы все еще можете открыть его, перетаскивая слева).

Кто-нибудь знает, как это исправить и / или кто-нибудь знает другой способ изменить заголовок панели инструментов? (Я нашел этот метод через поиск в Google).

2 ответа

Решение

Попробуйте это в вашем Activity:

public void setActionBarTitle(String title) {
    getSupportActionBar().setTitle(title);
}

И это для вашего Fragment(вы можете использовать его на OnCreate или же onResume метод):

@Override
public void onResume(){
    super.onResume();

    // Set the title 
    ((MainFragmentActivity) getActivity()).setActionBarTitle("Your title");
}

Кроме того, посмотрите на:

Изменить заголовок ActionBar с помощью фрагментов

Установка пользовательского заголовка ActionBar из фрагмента

это хорошо сработало со мной, надеюсь, это поможет всем, кто сталкивается с той же проблемой (это устраняет проблему, когда вы нажимаете значок гамбургера, чтобы открыть DrawerLayout)

      setSupportActionBar(binding.appBarMain.toolbar)
//to open the navBar by pressing on the hamburger Icon
ActionBarDrawerToggle(this, binding.drawerLayout,binding.appBarMain.toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close)
Другие вопросы по тегам