Android中Parcelable接口的Koltin实现方式

5年以前  |  阅读数:970 次  |  编程语言:Kotlin 
data class UserBean(
        var name: String,
        var age: Int
) : Parcelable {
    constructor(source: Parcel) : this(source.readString(), source.readInt())
    override fun describeContents() = 0
    override fun writeToParcel(dest: Parcel?, flags: Int) {
        dest?.writeString(name)
        dest?.writeInt(age)
    }
    companion object {
        @JvmField val CREATOR: Parcelable.Creator<UserBean> = object : Parcelable.Creator<UserBean> {
            override fun createFromParcel(source: Parcel): UserBean = UserBean(source)
            override fun newArray(size: Int): Array<UserBean?> = arrayOfNulls(size)
        }
    }
}

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8