2017-06-07 6 views
0

パーセルクリエータコードをJavaからKotlinに変換しようとしています。自動コードコンバータはこれで失敗し、解決方法がわかりません。私は変換てるコードは次のとおりです。JavaパーセルクリエータコードをKotlinに変換する

val CREATOR: Parcelable.Creator<Save> = object : Parcelable.Creator<Save> { 

    override fun newArray(size: Int): Array<Save> { 
     return arrayOfNulls(size) 
    } 

    override fun createFromParcel(incoming: Parcel): Save { 
     return Save(incoming) 
    } 
} 

arrayOfNulls(サイズ)のための「型推論が失敗した」というエラーを与える:私はこれで終わる

public static final Creator<Save> CREATOR = new Creator<Save>() { 

    @Override 
    public Save[] newArray(int size) { 
     return new Save[size]; 
    } 

    @Override 
    public Save createFromParcel(Parcel incoming) { 
     return new Save(incoming); 
    } 
}; 

。私は保存(サイズ)に変更しようとしましたが、それはどちらも動作しません。何か案は?

答えて

2

arrayOfNullsは、nullの可能な要素の配列Array<Save?>を返します。それに合わせて関数の戻り値の型を変更する必要があります。

override fun newArray(size: Int): Array<Save?> { 
    return arrayOfNulls(size) 
} 
0

あなたは、Parcelable、ただの提案を行うためにthisプラグインを試すことができます私は試したことがないが、グーグルながら出くわします。

+0

私はこのプラグインが本当に好きです。共有してくれてありがとう – Tony

関連する問題