使用后退按钮时Android更改标题

标签 android back

我的 Activity :

TextView title;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Overview overview = new Overview();

    setContentView(R.layout.activity_second);
    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.mycontainer, overview)
                .commit();
    }
    Toolbar toolbar = (Toolbar) findViewById(R.id.my_toolbar);
    //Some more code

    title = (TextView) toolbar.findViewById(R.id.screentitle);
    title.setText("Overzicht");


}



@Override
public boolean onNavigationItemSelected(MenuItem item) {

    switch(item.getItemId()){
        case R.id.nav_menu_overview:
            title.setText("Overzicht");
            getSupportFragmentManager().beginTransaction().replace(R.id.mycontainer, new Overview()).addToBackStack(null)
                    .commit();

            break;
        case R.id.nav_menu_favourites:
            title.setText("Favorieten");
            getSupportFragmentManager().beginTransaction().replace(R.id.mycontainer, new Favourites()).addToBackStack(null)
                    .commit();

            break;

        case R.id.nav_menu_profile:
            title.setText("Profiel");
            getSupportFragmentManager().beginTransaction().replace(R.id.mycontainer, new Profile()).addToBackStack(null)
                    .commit();
            break;
    }

所以,现在,如果我使用我的菜单更改 fragment ,标题就会更改。但是,如果我使用 android 后退按钮,标题不会变回。如何在使用后退按钮时改回标题?

最佳答案

您可以简单地覆盖 Activity 的 onBackPressed 方法并处理该场景。

更好的方法是您可以在 fragment onViewCreated 中设置标题,这样无论哪个 fragment 在顶部都会自动设置您想要设置的图 block 。

例如:在 fragment 中设置标题

Toolbar toolbar= (Toolbar) getActivity().findViewById(R.id.toolbar);
toolbar.setTitle("What ever you want to set");

也不要在 onNavigationItemSelected 中设置标题,它应该用于导航而不是设置标题。

关于使用后退按钮时Android更改标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38694983/

相关文章:

android - onActivityResult 正在调用而没有完成结果的调用 Activity

java - 在 Android 中使用 MapController 的 setCenter 方法时出现空指针异常

android - 按下后退按钮时亮度不会保存

android - 在嵌套 fragment 之间传递数据

android - 如何在 Android Ice Cream Sandwich 上同时启用硬件和虚拟键盘

用于快速滚动长列表的 Android ListView alpha 滚动器

php - 点火器 |获取上一个 URL 并用作上一页的后退按钮

javascript - 单击浏览器的后退按钮时重定向到特定页面

javascript - 如何区分浏览器后退/前进按钮?

reactjs - React Navigation 5,登录后阻止返回导航