2012-02-17 21 views
8

Android uygulamasında Parcelable nesnesini içeren bir etkinliğim var (Parcelable uygular).Harita bir parsele nasıl yazılır?

Bu nesne bir harita içermektedir.

ben writeToParcel() yönteminde aşağıdaki yapmaya çalışacağım

:

yerine writeBundle (Paketi) kullanın:

parcel.writeMap(myMap); 

ben API aşağıdaki yorumunu olsun. Gerekirse, geçerli dataPosition() öğesinde numaralı parsel içine bir Harita düzleştirir, gerekirse dataCapacity() büyür. Harita tuşları Dize nesnesi olmalıdır. Harita değerleri writeValue (Object) kullanılarak yazılır ve buradaki spesifikasyonlara uygun olmalıdır.

Nasıl yapmalıyım? writeBundle(myMap)'u nasıl kullanmalıyım?

+0

[buradan] (http://stackoverflow.com/questions/8254654/how-convert-write-java-util-map-into-parcel-in-a-smart-way) adresinden yardım alabilirsiniz. –

+0

http://android-orchestration.googlecode.com/svn-history/r162/trunk/Orchestration/src/orchestration/android/parcelable/ParcelableAndroidTaskDTO.java –

+0

İkinize de teşekkürler, dolayısıyla basit bir WriteMap yolu yok. Gerçek harita girişlerini tek tek eklemem gerekiyor gibi görünüyor. – Chaiavi

cevap

5

Paket sadece bir haritadır. Haritanızda yineleyin, her bir eşleştirmeyi yeni oluşturulmuş bir Bundle nesnesine yerleştirin ve writeBundle'ı bunun üzerinde arayın. En iyi çözüm olmayabilir, ancak uygulanabilir bir çözüm.