我无法在修复backback的碎片时恢复标题ActionBar



当第一个片段打开时,我把它放在ActionBar 的头中

 getActivity().setTitle("Guests" + hotel + "" + "(" + count + ")");

如果这篇文章的开头是另一个,我放了一个新的标题,片段被放在背后并隐藏

 @Override
    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
        FragmentTransaction fTrans = getFragmentManager().beginTransaction();
        Fragment guestFragment = new Guest();
        fTrans.hide(this);
        fTrans.add(R.id.content_frame, guestFragment, "guest");
        fTrans.addToBackStack(null);
        fTrans.commit();
    }

在新片段中正确展示标题

getActivity().setTitle(guests.get(0).getName());

但当我点击后退按钮并打开旧的片段标题时,它保持不变。我不知道当碎片从背后拉出时会触发哪种方法。

我试过Resume和Start,但什么都没发生

@Override
    public void onResume() {
        getActivity().setTitle("fgfdhgfdjhj");
        super.onResume();
    }

setTitle方法移动到onActivityCreated()

在第一个片段public static String header;header = "Guests" + hotel + "" + "(" + count + ")";

在第二片段中

@Override
    public void onDestroy() {
        getActivity().setTitle(GuestsList.header);
        super.onDestroy();
    }

我不知道它是如何正确的,但它是有效的。如果有人知道更好的解决方案,请写

最新更新