gpt4 book ai didi

android - 如何在与当前 fragment 相同的空间中加载新 fragment

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

我正在寻找一些关于处理启动其他 fragment 的 fragment 的最佳方法的建议。

我正在转换我开始使用更基于 Activity 的方法编写的应用程序,此后开始将其转移到使用 fragment 。我有一些用于启动新 Activity 的 Fragment,我想将它们移动到在当前 Fragment 所在的同一 View 中启动其他 Fragment。

例如 - 我有一个 Activity,它有一个 WebView,它使用 WebViewClient 来处理内部 js->java 交互。我的 WebViewClient 可以启动其他 Activity,我曾经这样做过:

 i = new Intent(context, GoogleMapActivity.class);
startActivity(i);

这个 webview Activity 可以是全屏的,也可以是侧面有菜单的 View ,但我希望 webview 尊重布局 - 所以如果菜单存在,它应该在启动新 fragment 时保持存在 - 我只是不'知道编写启动 fragment 的代码的最佳方法。

那么...有没有办法在 Fragment 中告诉新 Fragment 加载到与当前 Fragment 相同的空间,或者是否需要与 Activity 进行某种交互?

** 编辑 **

鉴于可以使用几种不同的布局,我并不总是知道我应该将 fragment 放入哪个 ID - 因此我需要知道是否有一种方法可以在不知道 ID 的情况下执行此操作(例如在 replace 方法中)。

最佳答案

getFragmentManager().beginTransaction()
.replace(((ViewGroup) getView().getParent()).getId(), fragment)
.addToBackStack(null)
.commit();

这应该用所需的 fragment 替换父容器。

关于android - 如何在与当前 fragment 相同的空间中加载新 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7793817/

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