val myParcelizedObjectArrayList = ArrayList<MyParcelisedObject>()
val bundle = bundleOf("SOME_BUNDLE_KEY" to myParcelizedObjectArrayList)
findNavController().navigate(R.id.action_fragmentA_to_fragmentB, bundle)
在FragmentB的onCreate()中,可以通过以下方式获取列表:
val myArrayList = arguments?.getParcelableArrayList<MyParcelisedObject>("SOME_BUNDLE_KEY")
3条答案
按热度按时间8cdiaqws1#
你现在不能通过安全参数共享数据,因为库不支持它。但是,你可以使用传统的方法,比如:
如果要将ArrayList数据从
FragmentA
发送到FragmentB
:在
FragmentA
中:在
FragmentB
的onCreate()中,可以通过以下方式获取列表:yyhrrdl82#
步骤
**1.**可以选择自定义序列化类型
**2.**然后需要查找ArrayList
**3.**你会得到一个这样的窗口
**4.**最后,在另一个片段中,您需要使用Object
navArgs.arrayList as ArrayList<YourObject>
将其返回到您的ArrayList
,并且您可以通过导航组件将Array列表传递给另一个片段,因为Array
对象实现了java.io.Serializable
接口jslywgbw3#
在你的fragment类中添加这个。像这样放置Parcelable列表
阅读这样的论点