how to properly implement Parcelable with an ArrayList?
как правильно реализовать Parcelable с помощью ArrayList?
У меня возникли проблемы с созданием моего класса Parcelable. Проблема в том, что я пытаюсь записать в parcel член класса, который является ArrayList<Parcelable> объектом. ArrayList Есть Serializable, а объекты (ZigBeeDev) в списке есть Parcelable.
public String _mac; // the source address (of the coordinator?) public String _pan; // the network address publicint _band; // the channel ArrayList<Integer> _lqis; // link quality indicators (to all devices?) ArrayList<ZigBeeDev> _devices; // the devices in the network
publicvoidwriteToParcel(Parcel out, int flags) { out.writeString(_mac); out.writeString(_pan); out.writeInt(_band); out.writeSerializable(_lqis); out.writeParcelable(_devices, 0); // help here }
public ZigBeeNetwork[] newArray(int size) { returnnewZigBeeNetwork[size]; } };
//... }
Я отметил два места "// help here", чтобы понять, как правильно выполнять запись в parclet и как ее реконструировать. Если ZigBeeDev is Parcelable (правильно протестировано), как мне это правильно сделать?