首页 分享 Android Jetpack架构组件之Navigation入门

Android Jetpack架构组件之Navigation入门

来源:花匠小妙招 时间:2025-04-29 21:14

最新推荐文章于 2025-02-28 17:20:11 发布

斌林诚上 于 2020-02-01 18:29:45 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

——沉默不是因为词穷,而是因为心空。现实有多残酷,你就应该有多坚强。

前言

一、简介

(1)是什么

(2)有什么用 

(3)有什么优点

​二、基本使用

(1)添加依赖

(2)创建navigation视图

(3)Activity中添加NavHost

(4)代码实现导航功能

三、组件分析

四、进阶

五、内容推荐

前言

——这篇主要是梳理一下Jetpack架构组件之一的Navigation,并结合楼主所学做个总结。面向那些还没接触Navigation的同学们。看完这篇可以快速了解它,并轻松使用。也想请教前辈们指点文章中的错误或不足的地方。本篇只描述Navigation,不会拓展额外的知识,若想了解更多关于Jetpack组件知识可以看楼主写的Jetpack专栏。

一、简介

(1)是什么

——是Android Jetpack 中的导航组件,支持用户导航、进入和退出应用中不同内容片段的交互。

这是文档给的说法,描述简单。却不易理解,唯有使用过该组件的方可理解其深刻含义。

这里就不强行解释,待浏览完该文章再细品。

(2)有什么用 

——Android Jetpack 的导航组件可帮助您实现导航,无论是简单的按钮点击,还是应用栏和抽屉式导航栏等更为复杂的模式。

(3)有什么优点 管理 Fragment 更加方便 更好的处理Fragment切换导航问题 该组件还可以支持抽屉式导航栏(DrawerLayout)和底部导航(BottomNavigationView)与顶部应用栏(Toolbar、CollapsingToolbarLayout、ActionBar)

​二、基本使用

(1)添加依赖

dependencies {

def nav_version = "2.1.0"

implementation "androidx.navigation:navigation-fragment:$nav_version"

implementation "androidx.navigation:navigation-ui:$nav_version"

implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"

implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

}

(2)创建navigation视图

1.右击res—New>Android Resource File  

2.定义名称与资源类型 Resource type =Navigation

这边定义login_navigation.xml文件如下。具体如何使用请参考官方文档。

<?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/login_navigation"

app:startDestination="@id/splashFragment">

<fragment

android:id="@+id/splashFragment"

android:name="com.blcs.xxx.fragment.SplashFragment"

android:label="splash"

tools:layout="@layout/fragment_splash" >

<action

android:id="@+id/action_splashFragment_to_loginFragment"

app:destination="@id/loginFragment" />

</fragment>

<fragment

android:id="@+id/loginFragment"

android:name="com.blcs.xxx.fragment.LoginFragment"

android:label="login"

tools:layout="@layout/fragment_login" >

<action

android:id="@+id/action_loginFragment_to_registerFragment"

app:destination="@id/registerFragment" />

</fragment>

<fragment

android:id="@+id/registerFragment"

android:name="com.blcs.xxx.fragment.RegisterFragment"

android:label="register"

tools:layout="@layout/fragment_register" />

</navigation>

相关知识

Android Sunflower 带您玩转 Jetpack
现代化 Android 开发:多 Activity 多 Page 的 UI 架构
Android 组件化,从入门到不可自拔组件化技术,在 Android 开发中有着举足轻重的作用。 随着时间推移,软件项
Android架构体系化学习与面试题期刊
Developer guides
Android组件化开发实践
进阶高工必备技能:Android插件化技术全解析!(附项目实战+视频分享)
App前端开发跨平台框架比较:React Native、Flutter、Xamarin等
使用React构建高效移动应用:从入门到实战的完整指南
Android碎片化问题, Google把它解决了吗?了解什么是碎片化, 碎片化出现的原因, 以及碎片化为何不再重要.

网址: Android Jetpack架构组件之Navigation入门 https://www.huajiangbk.com/newsview1805855.html

所属分类:花卉
上一篇: 镜里观花:典故与现代应用
下一篇: 机器人智能导航=SLAM+路径规

推荐分享