今天小编给大家分享一下Navigation Bundle怎么实现两个Fragment参数传递的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
正文
使用Fragment的时候可能需要在两个Fragment之间进行参数的传递,可以将数据存入bundle,在页面导航时,传入bundle,完成参数的传递。具体实现如下:
1.初始化导航控制器
NavController controller = Navigation.findNavController(requireView());
2.创建Bundle对象
Bundle bundle = new Bundle();bundle.putString("key", "this is value");
类似的还存在 putInt、putChar等方法
3.传递参数
controller.navigate(R.id.action_nav_home_to_nav_laboratory, bundle);
4.接受参数
在跳转的页面使用getArguments()
方法可以获取传入的Bundle对象,通过之前的 key 取出相关值即可。
Bundle bundle = getArguments(); String str = bundle.getString("key");
为了避免空指针错误,此处可以添加默认值
String str = bundle.getString("Key","null");
以上就是“Navigation Bundle怎么实现两个Fragment参数传递”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。