使用Serialized 透過Intent 傳遞資料:解決常見問題
利用Serialized 是一種在Android 應用程式中的Activity 之間傳遞資料的方法。然而,在實施過程中可能會出現問題。以下是如何對最常見的問題進行故障排除。
問題:
可序列化實作不適用於包含 Bitmap 的自訂類別。
解決方案:
確保 Bitmap 可序列化實現可序列化的自訂位圖類別或找到替代方法來表示和發送它。
其他問題:
透過 Intent.putExtra 傳遞自訂縮圖物件清單失敗。
解決方案:
使用 Bundle.putSerialized 而不是 Intent.putExtra 來傳遞可序列化清單。需要使用 getIntent().getExtras() 檢索 Bundle,並且可以使用 getSerialized 存取清單。
修訂的程式碼:
// Prepare the Bundle Bundle bundle = new Bundle(); bundle.putSerializable("value", all_thumbs); // Pass the Bundle to the Intent intent.putExtras(bundle); // Retrieve the Bundle in the receiving Activity Intent intent = this.getIntent(); Bundle bundle = intent.getExtras(); // Retrieve the serializable list List<Thumbnail> thumbs = (List<Thumbnail>) bundle.getSerializable("value");
透過使用Bundle.putSerialized 並正確檢索它,您可以透過 Intent 成功傳遞可序列化物件的清單。使用自訂物件時,請始終記住實作 Serialized 介面或使用相容的資料傳輸機制。
以上是如何使用 Serialized 在 Android 中的 Activity 之間成功傳遞資料(包括點陣圖和清單)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!