Kotlin の Parcelize で簡単 Parcelable 実装

Kotlin 1.1.4 から Parcelable を手軽に実装できるようにする機能が追加された

KEEP/android-parcelable.md at master · Kotlin/KEEP

まだステータスは正式版ではないので gradle で

androidExtensions {
    experimental = true
}

を有効化し、

@Parcelize
class MyParcelable(val data: Int): Parcelable

このように書いておくとコンパイル時に自動的に Parcelable 相当の実装を生成してくれる
data クラスにも使用出来るので json のパース結果などを Activity 間で受け渡すのが非常に簡単になる

これまでは grandstaish/paperparcel を使っていたが CREATOR フィールドを用意する必要がないのでより手軽だ

※注意
CRETOR フィールドを用意する必要はないが、@Parcelize アノテーションを付与したクラスはIDE上で
this class implements parcelable but does not provide a CREATOR field
というエラー扱いになる(でもコンパイルは通る)
下記チケットが起票されているので、直に修正される…と思いたい
[AS3.0] Android extensions, Parcelable: editor shows warning about incomplete implementation on a class with Parcelize annotation : KT-19300