使用JetPack中Navigation简化fragment切换
发布日期:2021-06-29 18:33:19
浏览次数:3
分类:技术文章
本文共 1305 字,大约阅读时间需要 4 分钟。
简介
安卓开发中,Activity的使用较为简单,而Fragment则令人头疼,使用非常复杂。为了改善此种情况,Google 在2018 I/O大会上推出了JetPack,而Navigation则是和页面切换相关的。
使用方法
(更高级用法见《》)
- build.gradle中添加依赖
implementation 'android.arch.navigation:navigation-fragment:1.0.0-rc02'
- 添加navigation文件. 1)鼠标右键点击“res”目录,选择“New”》“Android Resource Directory” 2)选择“navigation” 3)鼠标右键点击“navigation”目录,选择“New”》“Navigation resource file” 4)通过界面拖拽或者直接编辑导航文件
3. 跳转(含传参)
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) gotoSecondFragmentBtn.setOnClickListener { Navigation.findNavController(it).navigate(R.id.action_firstFragment_to_secondFragment, Bundle().apply { putString("name", "jenny") putInt("age", 18) }) } }
- 接收参数(下面的navigateUp是返回的意思)
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) arguments?.let { infoTextView.text = "上页传入数据:name:" + it.getString("name") + ";age:" + it.getInt("age", 0) } gotoFirstFragmentBtn.setOnClickListener { Navigation.findNavController(it).navigateUp() } }
- 实现效果
源代码
附录
navigation官方介绍文档:
其他参考资料:
安卓开发技术分享:
更多技术总结好文,请关注:「程序园中猿」转载地址:https://cxyxy.blog.csdn.net/article/details/88135466 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月25日 06时28分55秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
分布式系统:Raft(实验作业2B)
2019-04-30
分布式系统:Raft(实验作业2C)
2019-04-30
一微秒的差别
2019-04-30
分布式系统:Raft(实验作业3A)
2019-04-30
分布式系统 Spinnaker
2019-04-30
分布式系统 Lab3B KVRaft snapshot
2019-04-30
分布式系统 Zookeeper
2019-04-30
分布式系统:Lec 10 分布式事务
2019-04-30
分布式系统:FaRM
2019-04-30
分布式系统:ZooKeeper 基本用例
2019-04-30
分布式系统:Spark
2019-04-30
分布式系统:Naiad
2019-04-30
分布式系统:参数服务器
2019-04-30
分布式系统:FastRPC eRPC
2019-04-30
奇异值分解简要笔记
2019-04-30
6.824(2020年) Lab1 MapReduce
2019-04-30
6.824 Amazon Aurora云数据库
2019-04-30
6.824 2020 Lecture 13: Spanner
2019-04-30