【发布时间】:2018-02-16 00:22:44
【问题描述】:
为了使用 Parcelable,我遵循了 Kotlin 1.1.4 的这个版本:https://blog.jetbrains.com/kotlin/2017/08/kotlin-1-1-4-is-out/
在项目中添加这一行
androidExtensions {
experimental = true
}
然后定义一个类:
@Parcelize
class User(val firstName: String, val lastName: String) : Parcelable
writeToParcel() 和 createFromParcel() 方法是自动创建的
override fun writeToParcel(parcel: Parcel, flags: Int) {
...
}
但在带有消息的“覆盖”关键字中仍然存在错误
OVERRIDING_WRITE_TO_PARCEL_IS_NOT_ALLOWED:覆盖“writeToParcel” 不允许。改用“Parceler”伴随对象
你能告诉我正确的方法吗?
编辑: 是否只有在默认构造函数中定义的属性会被添加到 Parcel,而其他的不是?我在这堂课上看到了这个警告。
PROPERTY_WONT_BE_SERIALIZED:属性不会被序列化为 '包裹'。添加 '@Transient' 注释以消除警告
【问题讨论】:
标签: android kotlin parcelable