You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让FragmentContainerView仅在主动触发时显示 禁止启动自动加载

问题描述

在Activity布局中添加了承载DialogFragment导航图的FragmentContainerView,期望仅在主动触发时才显示对应的弹窗,但Activity启动时该组件就会自动加载显示,即便在XML中为其设置android:visibility="gone"属性也无效。

对应Activity XML代码

<androidx.fragment.app.FragmentContainerView
            android:id="@+id/dialogNavigation"
            android:name="androidx.navigation.fragment.NavHostFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:visibility="gone"
            app:defaultNavHost="false"
            app:navGraph="@navigation/nav_dialog"
            tools:layout="@layout/tutorial_dialog_start" />
可行解决方案
  • 若项目存在普通页面、弹窗两套独立导航图,可将二者合并,通过导航Action从指定Fragment跳转到对应Dialog即可。
  • 在弹窗导航图中设置一个空白Dialog作为起始目的地,需要显示实际弹窗时再从空白Dialog导航到目标弹窗即可。

内容的提问来源于stack exchange,提问作者Edvin Keskin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 23:36:03