Как использовать Parcelable, если класс требует дополнительных параметров в конструкции - PullRequest
2 голосов
/ 20 мая 2010

Я пытаюсь создать класс с обобщениями, которые будут иметь возможность сериализации своего состояния с использованием интерфейса Parcelable. Проблема в том, что класс должен содержать конструктор с одним параметром - Parcel, но в моем случае мне нужно создать класс с дополнительными параметрами. Кроме того, Parcelable.Creator не позволяет использовать дженерики.

Вот пример:

public class Sample<T> {

...

public Sample(Context ctx, SomeInterface iface, Parcel parcel) {...}

...

}

Как лучше всего это делать?

1 Ответ

0 голосов
/ 20 мая 2010

Уже нашли решение - я переместил все члены, связанные с состоянием объекта, в отдельный класс Parcelable и добавил следующий конструктор:

public Sample(..., ParcelableState state)

...