如何解决如何将 List<List<T>> 传递给我的片段?
我正在尝试使用 ViewPager2
并为每个创建的新片段传递包中的一些内容。
有两件事我不确定,我的类结构和用于创建片段的工厂方法 newInstance()
。
abstract class Theme(@DrawableRes backgroundRes: Int)
@Parcelize
data class BackgroundTheme(@DrawableRes val backgroundRes: Int): Theme(backgroundRes),Parcelable
@Parcelize
data class FontTheme(val fontName: String,@FontRes val fontRes: Int,@DrawableRes val backgroundRes: Int): Theme(backgroundRes),Parcelable
对于这个类结构,我希望 Theme
向下传递 backgroundRes
但同时也是抽象的,因此它不会被实例化。 @Parcelize
用于尝试使这些类成为 parcelables
。
companion object {
@JvmStatic
fun newInstance(themes: List<List<Theme>>) =
ThemeFragment().apply {
arguments = Bundle().apply {
putParcelable(THEMES,themes)
}
}
}
这是片段的工厂方法。我正在尝试将 List<Theme>
传递给这个片段。 putParcelable()
不起作用,看来我需要 putParcelableArrayList()
或 putParcelableArray
?
如果我的类结构正确,任何人都可以帮助我尝试将这些作为可分块传递给片段吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。