2010-01-26 4 views
1

나는 (다른 것들 중에서) 인 텐트 목록을 가진 객체를 가지고있다. 이 객체를 인 텐트에 추가로 전달하고 싶습니다. 그러나 Intent 클래스는 직렬화 할 수 없으며 단지 "Parcelable"입니다.Android : Serializable Intent

필자는 Parcelable이 Serializable의 안드로이드 버전이라고 가정하지만 필자의 클래스에 대해 필자 고유의 serialization 코드를 작성할 필요는 없으며 Parcelable에는이를 요구하는 것으로 보인다.

누구나 intent를 직렬화 가능 클래스로 다시 구현하는 것 외에 다른 해결책이 있습니까?

답변

3

IntentParcelable을 넣을 수 있으며 Intent은 이미 Parcelable입니다. 당신이해야 할 일은 당신의 물건을 Parcelable으로 만들고 당신 만 설정하면됩니다.

+0

의도를 쉽게 할 수있는 방법이 있습니까? Serializable은 인터페이스를 던져 주어야하기 때문에 멋지다. 필자는 수동으로 객체를 직렬화해야한다. –

+0

'Intents'는 이미'Parcelable '이다. – CommonsWare

+0

예, 인 텐트가 있지만 개체가 아니며 다소 복잡한 개체가 많이 있음을 이해합니다. 직렬화 코드를 직접 작성하는 것은 오류가 발생하기 쉽습니다. –

0

또 다른 경로는 당신이 취할 수

는 과도 의도의 목록을 (직렬화에 포함되지 않음), 는 다음 parcelable Intent.putExtra를 통해 배열 (문자열 키, Parcelable [] 값)로 전달한다.

받는 클래스는 개체를 다시 만들 수 있습니다.