簡體   English   中英

Parcelable的readInt(),readFloat()等是否知道它們正在檢索什么值?

[英]Does the readInt(), readFloat() etc. of Parcelable know what value they are retrieving?

如果您的類實現了可打包的,那么您就知道系統需要一個構造函數來根據剛剛收到的小包來構造您的類。

因此,必須編寫通常類似於以下構造函數的構造函數,這會使它變得有些混亂:

public myClass(Parcel in){
   this.type = in.readInt();
   this.size = in.readInt();
}

您會看到是否有一個參數,並且這些與讀取相關的方法的調用方式如下:

   this.type = in.readInt(type);
   this.size = in.readInt(size);

然后就很清楚發生了什么,但是它們根本沒有任何參數。 所以我想知道:這應該怎么做? 這些方法是否在某種程度上是“智能”的,您不必告訴他們要獲得哪個領域,他們將始終設法找到合適的領域?

還是順序的? 如果我這樣使用它:

   this.size = in.readInt();
   this.type = in.readInt();

我要去的田地都弄亂了嗎? 如果是這種情況,這不是在乞求錯誤嗎? 由於粗心大意的錯誤,我可能會做錯很長時間的事情,但過了一段時間才發現?

順序很重要。 必須以相同的順序讀取所有寫入。

如果是這種情況,這不是在乞求錯誤嗎? 由於粗心大意的錯誤,我可能會做錯很長時間的事情,但過了一段時間才發現?

確實

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM