灯塔@kuaidao 2022-03-29 16:48 采纳率: 50%
浏览 158
已结题

导航组件Navigation,从一个Activity 跳转到Fragment

问题遇到的现象和发生背景
应用内如何通过Intent, 跳转到Navigation 某一个指定的子Fragment

<fragment
    android:id="@+id/fragment_accountSafe"
    android:name="com.locojoy.restart.usercenter.activity.fragment.AccountSafeFragment"
    android:label="@string/ucenter_accountsafe"
    tools:layout="@layout/fragment_account_safe">

    <action
        android:id="@+id/ucenter_action_fragment_accountsafe_to_fragment_logoutprotocol"
        app:destination="@id/fragment_logoutprotocol"
        app:enterAnim="@anim/slide_in_right"
        app:exitAnim="@anim/slide_out_left"
        app:popEnterAnim="@anim/slide_in_left"
        app:popExitAnim="@anim/slide_out_right" />

</fragment>
<fragment
    android:id="@+id/fragment_logoutprotocol"
    android:name="com.locojoy.restart.usercenter.activity.fragment.LogoutProtocolFragment"
    android:label="@string/ucenter_applykonw"
    tools:layout="@layout/fragment_logout_protocol">

    <action
        android:id="@+id/ucenter_action_fragment_logoutprotocol_to_logout_account_screen"
        app:destination="@id/logout_account_screen"
        app:enterAnim="@anim/slide_in_right"
        app:exitAnim="@anim/slide_out_left"
        app:popEnterAnim="@anim/slide_in_left"
        app:popExitAnim="@anim/slide_out_right" />
</fragment>

<fragment
    android:id="@+id/logout_account_screen"
    android:name="com.locojoy.restart.usercenter.activity.fragment.LogoutFragment"
    android:label="@string/ucenter_applyreason"
    tools:layout="@layout/fragment_logout">

    <deepLink
        android:id="@+id/ucenter_deeplink"
        app:uri="ucenter://logout" />
</fragment>
运行结果及报错内容

我的解答思路和尝试过的方法
1.官方文档介绍了使用显式PendIntent或者 隐式Intent进行应用外deepLink 方式跳转到应用内.显然这种方式适用应用外跳转!
2.尝试使用 NavDeepLinkBuilder 构建一个Intent,但是api只提供构建 PendingIntent方式。

可行方案:通过主Navigator 进行二次中转到某个子Fragment这种方式虽然可以,显的很Low。
我想要达到的结果

直接导航到具体某一个子Fragment内。

直接跳转到 LogoutFragment 子Fragment

  • 写回答

1条回答 默认 最新

  • 不会写代码的猴子 Android领域优质创作者 2022-03-29 17:09
    关注

    如果把子framengt添加到list,跳转的时候带个position过来然后在list中找目标fragment可行不?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月6日
  • 已采纳回答 3月29日
  • 创建了问题 3月29日

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器