Adakah yang tahu di mana / kapan metode Parcelable ini dipanggil?
@Override
public int describeContents() {
return 0;
}
Itu harus diganti. Tetapi haruskah saya mempertimbangkan untuk melakukan sesuatu yang berguna dengannya?
Adakah yang tahu di mana / kapan metode Parcelable ini dipanggil?
@Override
public int describeContents() {
return 0;
}
Itu harus diganti. Tetapi haruskah saya mempertimbangkan untuk melakukan sesuatu yang berguna dengannya?
Jawaban:
Ada konstanta yang didefinisikan dalam
Parcelable
pemanggilanCONTENTS_FILE_DESCRIPTOR
yang dimaksudkan untuk digunakan dalamdescribeContents()
membuat nilai kembalian bitmask.Deskripsi
CONTENTS_FILE_DESCRIPTOR
di ref API adalah:Yang benar-benar berarti: Jika Anda perlu menempatkan
FileDescriptor
objek ke dalam Parcelable Anda harus / harus menentukanCONTENTS_FILE_DESCRIPTOR
sebagai nilai kembali dari describeContents (), yaitu dengan " objek khusus " (didescribeContents()
's description) mereka benar-benar berarti:FileDescriptor
.Seluruh fungsi Parcelable ini terlihat belum selesai (baca: desainnya jelek). Ada satu hal aneh lainnya di dokumen:
Menerapkan banyak warisan dengan aturan yang ditentukan dalam bentuk yang dapat dibaca manusia? :-)
Sepertinya programmer C ++ dirancang
Parceable
dan pada titik tertentu dia menyadari: Oh, sial, tidak ada banyak warisan di Java ... :-)sumber
describeContents()
harus mengembalikan 0 setiap kali "tidak ada yang istimewa tentang itu" . Yang tidak menjelaskan apapun. Penjelasan Anda jauh lebih jelas!Hanya ada dua nilai yang mungkin, 0 atau CONTENTS_FILE_DESCRIPTOR
jika Anda membuat serial POLO, nilai ini harus selalu 0, CONTENTS_FILE_DESCRIPTOR dicadangkan untuk ParcelFileDescriptor , yang dapat membuat serialisasi File Descriptor (FD) di sistem * unix.
sumber