2 回答

TA貢獻1804條經驗 獲得超2個贊
Android 開發文檔要求您直接從 API v26.1.0 開始使用Parcelable.ClassLoaderCreator 。
public static interface Parcelable.ClassLoaderCreator implements Creator<T>
android.os.Parcelable.ClassLoaderCreator<T>

TA貢獻1829條經驗 獲得超9個贊
來自Android 開發者文檔
ParcelableCompat 類在 API 級別 26.1.0 中已棄用。
直接使用Parcelable.ClassLoaderCreator。
所以改變你的代碼
public static final Parcelable.Creator<SavedState> CREATOR
= ParcelableCompat.newCreator(new ParcelableCompatCreatorCallbacks<SavedState>() {
@Override
public SavedState createFromParcel(Parcel in, ClassLoader loader) {
return new SavedState(in, loader);
}
@Override
public SavedState[] newArray(int size) {
return new SavedState[size];
}
});
至
public static final Parcelable.ClassLoaderCreator<SavedState> CREATOR
= new Parcelable.ClassLoaderCreator<SavedState>() {
@Override
public SavedState createFromParcel(Parcel source) {
return createFromParcel(source, null);
}
@Override
public SavedState createFromParcel(Parcel source, ClassLoader loader) {
return new SavedState(source, loader);
}
@Override
public SavedState[] newArray(int size) {
return new SavedState[size];
}
};
添加回答
舉報