2017-10-25 20 views
0

質問はここに質問されましたPass multidimensional ArrayList of LatLng through intentしかし、実際の回答はありません。Receive ArrayList <ArrayList <LatLng>> from Intent

私は答えはそこに述べて何を行っている、と私はエラーなしでそれを通過することができ、

intent.putExtra("lat_lng_list", mLatLonList); 

が、私はもう一方の端にそれを受け取ることができません。私が一番近かったのは、使用していたのです:

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

しかし、これはそうではありませんが、nullを返します。私はLatLngがparcelableを実装していることを知っています。同じ.putExtraを使ってLatLngのArrayListを渡し、intent.getParcelableArrayListExtra()でそれを取得することはできましたが、多次元の場合でも動作しません。何かが助けます。

+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

それがあなたのために働いた場合は、答えとしてマークしてください:) –

関連する問題