gpt4 book ai didi

android - fragment 和抽屉导航的不同工具栏

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:04:34 26 4
gpt4 key购买 nike

请向我解释一下...我的Activity 中有Navigation Drawer,它与Toolbar(如ActionBar)同步。 Activity 的 fragment 很少,在不同的 fragment 中我需要使用不同的 AppBar 模式(一个视差,另一个简单)。所以,我认为我应该在每个带有 AppBar 和内容的框架中设置 CoordinatorLayout
但是我如何替换新工具栏上的最后一个工具栏以保存与抽屉的同步?还是方法不对,我需要改成其他方法?

最佳答案

不确定我的方法是否好,但我尝试将此公共(public)方法添加到我的 Activity 中:

public void setToolbar(Toolbar toolbar) {
if(toolbar != null) {
setSupportActionBar(toolbar);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
} else {
drawer.setDrawerListener(null);
}
}

我在所有 fragment 中添加了这个:

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
((MainActivity)getActivity()).setToolbar(toolbar);
}

@Override
public void onDestroyView() {
((MainActivity)getActivity()).setToolbar(null);
super.onDestroyView();
}

它工作正常,但我不确定它是否会导致内存泄漏或任何其他性能问题。也许有人可以提供帮助?

关于android - fragment 和抽屉导航的不同工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35015182/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com