Android Navigation + Fragment 制作APP主页面导航(步骤

<fragment

android:id=“@+id/afragment”

android:name=“com.llw.navigation.fragment.AFragment”

android:label=“afragment”

tools:layout=“@layout/fragment_a” />

上面的也很简单,id表示它在导航图的标识,name指明这个Fragment的路径,包名+类名。label就是标签而已。layout就是绑定这个Fragment对应的布局。

这里你肯定回想,刚才不是在AFragment的onCreateView方法的返回中指明这这个布局吗?

在这里插入图片描述

那么这里又添加是为什么,因为你如果在导航图中指明了某一个Fragment的布局,那么在代码中就可以不用指明,也可以两者都指明,但至少要有一个地方指明,所以我这样写是可以的。为了让看的人更了解而已,虽然是多此一举。

那么这个nav_graph.xml的其他的Fragment也要添加,如下所示

<?xml version="1.0" encoding="utf-8"?>

<navigation xmlns:android=“http://schemas.android.com/apk/res/android”

xmlns:app=“http://schemas.android.com/apk/res-auto”

xmlns:tools=“http://schemas.android.com/tools”

android:id=“@+id/nav_graph”>

<fragment

android:id=“@+id/afragment”

android:name=“com.llw.navigation.fragment.AFragment”

android:label=“afragment”

tools:layout=“@layout/fragment_a” />

<fragment

android:id=“@+id/bfragment”

android:name=“com.llw.navigation.fragment.BFragment”

android:label=“bfragment”

tools:layout=“@layout/fragment_b” />

<fragment

android:id=“@+id/cfragment”

android:name=“com.llw.navigation.fragment.CFragment”

android:label=“cfragment”

tools:layout=“@layout/fragment_c” />

<fragment

android:id=“@+id/dfragment”

android:name=“com.llw.navigation.fragment.DFragment”

android:label=“dfragment”

tools:layout=“@layout/fragment_d” />

<fragment

android:id=“@+id/efragment”

android:name=“com.llw.navigation.fragment.EFragment”

android:label=“efragment”

tools:layout=“@layout/fragment_e” />

然后你会发现还报错,那么你可以现在navigation标签中添加

tools:ignore=“UnusedNavigation”

在这里插入图片描述

它就不报错了,这句话的意思是未使用导航的许可。因为我现在还没有使用这个nav_graph.xml所以要加上这一句话告诉AS,让它放心。等我们真正去使用时,是没有影响的,去不去掉都行。

[](()3. 添加NavHost


这个在上面是介绍过的,它是用来装载和显示Fragment的,都知道Fragment是要依附在Activity上的,那么很明显这个NavHost也是要放在Activity中,那么下面打开activity_main.xml。修改代码如下:

<?xml version="1.0" encoding="utf-8"?>

<androidx.constraintlayou

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值