gpt4 book ai didi

android - 每个 fragment 的工具栏导致内存问题

转载 作者:太空宇宙 更新时间:2023-11-03 12:14:13 26 4
gpt4 key购买 nike

我为应用中的每个 fragment 提供了工具栏。

以下是 fragment 中设置工具栏的代码。 setToolbarActivity 中的一个方法,它使用接口(interface)从 fragment 中调用。

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
Toolbar toolbar = view.findViewById(R.id.toolbar);
if (mListener != null) {
mListener.setToolbar(toolbar);
}
}

现在,由于在 fragment 被销毁时我没有删除工具栏,所以它导致了内存泄漏。我想知道应该在哪里删除工具栏 fragment 以及如何删除。

知道我应该在哪里以及如何释放 fragment 中的工具栏吗?

根据我之前提出的问题 Can I have toolbar for each fragment separately. How to handle navigation drawer我被告知我可以在每个 fragment 中有一个工具栏,但现在我面临内存泄漏。

最佳答案

与其分别为每个 fragment 创建工具栏,不如在这些 fragment 的父 Activity 中创建一个工具栏。

如果您担心每个 fragment 中的菜单选项,则无需担心。只需在每个 fragment 的 onCreateView 方法中编写 setHasOptionsMenu(true) 即可。还要覆盖每个 fragment 中的 onCreateOptionsMenuonOptionsItemSelected。 Activity 工具栏将自动反射(reflect)菜单选项的变化。

注意:始终从 Android Studio 提供的模板生成 Activity 。它将为您节省时间和精力。您始终可以删除所有您认为不必要的样板代码。

关于android - 每个 fragment 的工具栏导致内存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49199313/

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