Kotlin now has support for Parcelizable objects, using the @Parcelize
annotation.
Watch the next video if you want a bit of history, but don't follow along with the code changes.
Things are much easier now. All you have to do, is add
@Parcelize
on the line before the class declaration for the Photo class.
The complete code in Photo.kt becomes:
package academy.learnprogramming.flickrbrowser // <-- use your own package name here import android.os.Parcelable import kotlinx.android.parcel.Parcelize @Parcelize class Photo(var title: String, var author: String, var authorId: String, var link: String, var tags: String, var image: String) : Parcelable
In the PhotoDetailsActivity class, change the code to use getParcelableExtra
val photo = intent.getParcelableExtra(PHOTO_TRANSFER) as Photo
instead of getSerializableExtra.