将操作栏的标题从片段更改为 Activity

Change Title of Action Bar from Fragmetn to Activity

我有一个带有按钮 A 的 MainActivity,用于导航到 Fragment A 并将初始标题设置为 "This is Main Title"

当我单击按钮 A 时,将执行以下代码

   getSupportActionBar().setTitle("Profile");
            getSupportFragmentManager().beginTransaction().replace(R.id.container,new TrialProfile()).addToBackStack(null).commit();

现在标题栏文本更改为 "Profile" 但问题是当我按下后退按钮时,标题保持不变。我希望它更改为原始版本,即 "This is Main Title"

你能帮我解决这个问题吗?

在您当前的 activity oncreate 方法中再次调用此方法

getSupportActionBar().setTitle("This is Main Title");
(getActivity()).setTitle("Profile");

将操作栏的标题从 Fragment 更改为 Activity

在 activity 中创建一个方法,如下所示:

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

现在可以调用fragment中的方法,activity更改标题:

在片段中:

  ((HomeActvitiy) getActivity()).setTitleActionBar("Fragment title");

在 Activity 中调用片段替换之前的方法,如下所示:

 setTitleActionBar("My Profile");
        getSupportFragmentManager().beginTransaction()
                .replace(R.id.home_container, new MyProfileFragment())
                .commit();

希望对你有用。