안드로이드 개발 질문/답변
(글 수 45,052)
parcel를 원하는 형태로 데이터를 정리하는 것이 parcelable인가요?
parcel는 데이터형에 관계없이 데이터를 집어 넣을 수 있는 것인가요?
parcel와 parcelable에 대한 좋은 예제나 설명 있으면 올려주세요...
부탁드립니다...
ㅡ.ㅡ
parcel는 데이터형에 관계없이 데이터를 집어 넣을 수 있는 것인가요?
parcel와 parcelable에 대한 좋은 예제나 설명 있으면 올려주세요...
부탁드립니다...
ㅡ.ㅡ
2009.11.18 09:18:36
Android Reference에 있는 내용처럼 데이타 또는 Object의 참조값을 가지고 있는 일종의 Container라는 것이 정확한 표현인 것 같습니다.
저같은 경우에는 Object를 다른 Activity 사이 또는 한 Activity내에서 Message를 이용하여
(Activity와 View, View 와 View간) 송수신할때 사용합니다.
이럴경우 Object를 반드시 Parcelable하게 만들어야 되고 거의 정형화된 방법으로
(Parcel에서 읽는 것, 쓰는 것, Parcel에서 해당 Object를 생성하는 것) 해당 Object를 기술하면 됨니다
(http://developer.android.com/intl/de/reference/android/os/Parcelable.html 의 Sample )
그런다음 이러한 Parcelable한 Object를 송신 측에서 Bundle에 put (putParcelable)하고 수신 측에서 get(getPcarcelable) 하면 되구요.
심지어 ArrayList까지 put을 할 수도 있습니다. (putParcelableArrayList/getParcelableArrayList).
잘 아시겠지만 Bundle를 보내느 방법은 Activity간에는 Intent , Activity내에서는 저같은 Handler 와 Message에 실어 보냄니다
속도를 빠르게 하기위하여 Activity간 데이타를 통째로 보내기에는 Parcel을 이용한 Pacelable Object를 이용하는 것이 좋을 것 같구요.
또한 한 Activity내에 복잡한 화면의 View간의 데이타를 빠르게 주고 받을떄도 마찬가지 이구요.
아직까지 잘 사용하고 있답니다.