使用JetPack中Navigation简化fragment切换
发布日期:2021-06-29 18:33:19 浏览次数:2 分类:技术文章

本文共 1305 字,大约阅读时间需要 4 分钟。

简介

安卓开发中,Activity的使用较为简单,而Fragment则令人头疼,使用非常复杂。为了改善此种情况,Google 在2018 I/O大会上推出了JetPack,而Navigation则是和页面切换相关的。

使用方法

(更高级用法见《》)

  1. build.gradle中添加依赖
    implementation 'android.arch.navigation:navigation-fragment:1.0.0-rc02'
  2. 添加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)            })        }    }
  1. 接收参数(下面的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()        }    }
  1. 实现效果

源代码

附录

navigation官方介绍文档:

其他参考资料:

安卓开发技术分享:

更多技术总结好文,请关注:「程序园中猿」

转载地址:https://cxyxy.blog.csdn.net/article/details/88135466 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:MVVM中未生成binding类解决方法
下一篇:安卓Toolbar使用 Demo(Kotlin)

发表评论

最新留言

不错!
[***.144.177.141]2024年04月08日 17时58分33秒