Kotlin:使用 parcelize 时的构造函数
Kotlin: Constructor when using parcelize
我正在创建一个小的测试应用程序来学习 kotlin 方式,但我在 Parcelable 参数方面遇到了一些问题。
我创建了一个摘要class:
abstract class Goal(var number: Int, var name: String) : Parcelable
现在我正在尝试用一个新的 class 来扩展这个 class,但是我有各种各样的构造问题:
@Parcelize
class OperationalGoal(number: Int, name: String, var description: String) : Goal(number, name)
抱怨number
和name
,我需要添加val
或var
。但是我已经在我的 super class...
中定义了 属性
有办法解决这个问题吗?
要使 @Parcelize
正常工作,您需要 open
提升父类的属性并在子类中覆盖它们:
abstract class Goal(open var number: Int, open var name: String) : Parcelable
@Parcelize
class OperationalGoal(override var number: Int, override var name: String, var description: String) : Goal(number, name)
我正在创建一个小的测试应用程序来学习 kotlin 方式,但我在 Parcelable 参数方面遇到了一些问题。
我创建了一个摘要class:
abstract class Goal(var number: Int, var name: String) : Parcelable
现在我正在尝试用一个新的 class 来扩展这个 class,但是我有各种各样的构造问题:
@Parcelize
class OperationalGoal(number: Int, name: String, var description: String) : Goal(number, name)
抱怨number
和name
,我需要添加val
或var
。但是我已经在我的 super class...
有办法解决这个问题吗?
要使 @Parcelize
正常工作,您需要 open
提升父类的属性并在子类中覆盖它们:
abstract class Goal(open var number: Int, open var name: String) : Parcelable
@Parcelize
class OperationalGoal(override var number: Int, override var name: String, var description: String) : Goal(number, name)