在参数中发送整个数据类实例

问题描述

我真的很困惑如何在android的参数中使用数据类。 我知道如何实现数据类。 有人帮助我如何将数据发送到参数。

解决方法

您只需要使用@Parcelize批注并从Parcelable继承您的类,就像这样:

@Parcelize
data class MyData(val abc: Int,val xyz: String): Parcelable

现在,在导航编辑器中的“添加参数”弹出窗口中,您应该选择“自定义可打包”参数类型,它将在此处。

进一步的操作取决于片段之间导航的方法。就我个人而言,我做这样的事情(在当前片段中):

findNavController().navigate(R.id.destinationFragmentId,DestinationFragmentArgs(myDataInstance).toBundle())