相关疑难解决方法(0)

Android Kotlin创建类实现Parcelable在writeToParcel方法的'override'中给出错误

要使用Parcelable,我已经关注了此版本的Kotlin 1.1.4:https://blog.jetbrains.com/kotlin/2017/08/kotlin-1-1-4-is-out/

在项目中添加此行

androidExtensions {
    experimental = true
}
Run Code Online (Sandbox Code Playgroud)

然后定义一个类:

@Parcelize
class User(val firstName: String, val lastName: String) : Parcelable
Run Code Online (Sandbox Code Playgroud)

writeToParcel()和createFromParcel()方法是自动创建的

override fun writeToParcel(parcel: Parcel, flags: Int) {
...
}
Run Code Online (Sandbox Code Playgroud)

但仍然在'override'关键字中出现错误消息

OVERRIDING_WRITE_TO_PARCEL_IS_NOT_ALLOWED:不允许覆盖'writeToParcel'.请改用"Parceler"伴侣对象

你能告诉我正确的方法吗?

编辑: 只有默认构造函数中定义的属性是否会添加到Parcel,而其他属性不是?我在这节课中看到了这个警告.

PROPERTY_WONT_BE_SERIALIZED:属性不会被序列化为"包裹".添加"@Transient"注释以删除警告

android parcelable kotlin

11
推荐指数
2
解决办法
3905
查看次数

标签 统计

android ×1

kotlin ×1

parcelable ×1