Kotlin实现Parcelable
Posted 安果移不动
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin实现Parcelable相关的知识,希望对你有一定的参考价值。
https://developer.android.com/kotlin/parcelize?hl=zh-cn#kts
plugins
id("kotlin-parcelize")
import kotlinx.parcelize.Parcelize
@Parcelize
class User(val firstName: String, val lastName: String, val age: Int): Parcelable
@Parcelize
要求在主要构造函数中声明所有序列化属性。该插件会针对每个属性发出警告,并在类正文中声明一个后备字段。此外,如果主构造函数的某些参数不是属性,就不能应用 @Parcelize
。
如果您的类需要更高级的序列化逻辑,请将其写在某个伴随类中:
@Parcelize
data class User(val firstName: String, val lastName: String, val age: Int) : Parcelable
private companion object : Parceler<User>
override fun User.write(parcel: Parcel, flags: Int)
// Custom write implementation
override fun create(parcel: Parcel): User
// Custom read implementation
以上是关于Kotlin实现Parcelable的主要内容,如果未能解决你的问题,请参考以下文章
Kotlin用@Parcelize实现序列化Parcelable
Kotlin用@Parcelize实现序列化Parcelable
Android Kotlin 创建类实现 Parcelable 在 writeToParcel 方法的“覆盖”中给出错误