0

질문은 여기 Pass multidimensional ArrayList of LatLng through intent에 질문되었지만 실제 답변이 없습니다.Receive ArrayList <ArrayList <LatLng>> 의도를 통해

내가 대답이 나와 무슨 짓을하고 내가 오류없이 통과 할 수

intent.putExtra("lat_lng_list", mLatLonList); 

하지만 난 다른 쪽 끝을받을 수 없습니다입니다. 내가 사용한 가장 가까운 것은 다음과 같습니다.

final ArrayList<ArrayList<LatLng>> latLngList = intent.getParcelableExtra("lat_lng_list"); 

그러나 이것은 그렇지 않더라도 null을 반환합니다. LatLng가 parcelable을 구현한다는 것을 알고, 동일한 .putExtra를 사용하여 LatLng의 ArrayList를 전달하고 intent.getParcelableArrayListExtra()를 통해 LatLng의 ArrayList를 전달할 수 있지만 다차원의 경우에는 작동하지 않습니다. 아무 것도 도움이됩니다.

+1

이 https://stackoverflow.com/questions/42417241/passing-an-arraylistobject-from-one-intent-to-another – sdfbhg

답변

2

ArrayListParcelable을 구현하지 않지만 Serializable을 구현합니다. getParcelableExtra을 사용하여 데이터를 수신 할 수 없으면 대신 getSerializableExtra을 사용해야합니다. 이처럼 : 당신이 큰 ArrayList 년대를 사용하는 경우

final ArrayList<ArrayList<LatLng>> latLngList = (ArrayList<ArrayList<LatLng>>) intent.getSerializableExtra("lat_lng_list"); 

또한 intent.putParcelableArrayListExtra()intent.getParcelableArrayListExtra()을 사용할 수 있습니다. LatLngSerializable을 구현하는지 확인하십시오.

참조 :

https://stackoverflow.com/a/28733592/5457878

+0

와우, 내가 그 전에 사용하여 시도했다 하지만 오류가 있어도 형 캐스팅에 대해 생각조차하지 않았습니다! 정말 고마워! –

+0

귀하의 앱에 오신 것을 진심으로 환영합니다. –

+0

그것이 당신을 위해 일했다면 답변으로 표시하십시오 :) –