Parcelableを使用する必要がありますか?それは、例えば、int型のためのような多次元配列を受け入れていないようですので、[] []Parcelableで多次元配列を送信するにはどうすればよいですか?
(私は活動の間でデータを送信する必要がある)
Parcelableを使用する必要がありますか?それは、例えば、int型のためのような多次元配列を受け入れていないようですので、[] []Parcelableで多次元配列を送信するにはどうすればよいですか?
(私は活動の間でデータを送信する必要がある)
配列はJavaで共変です(と彼らはすべてのオブジェクトを拡張します)。 int[][]
はint[]
の配列を意味し、int[]
はObject
ある: したがって、アレイがオブジェクトであるという理由だけで、Object[]
アレイに配列の配列(int[][]
等)を割り当てることができます。ジェネリック医薬品と
、あなたがタイプT
と正確int[][]
され、その配列につながるT
int[]
として定義する配列T[]
を、持っている場合。
これが役に立ちます。
私は本当にそれを取得しません。あるアクティビティから別のアクティビティへ多次元配列を転送する方法を示すサンプルを提供できますか?バンドルを使用することもできますか? – Aron
私はこれはかなり遅れてゲームにあるが、これは私が使用した溶液であることを知っている:
private void write2DimArray(int[][] array, Parcel parcel) {
parcel.writeInt(array.length);
for(int[] arrayDim1 : array) {
parcel.writeInt(arrayDim1.length);
parcel.writeIntArray(arrayDim1);
}
}
private int[][] read2DimArray(Parcel parcel) {
int[][] array = new int[parcel.readInt()][];
for(int i = 0; i < array.length; i++) {
int arraySize = parcel.readInt();
array[i] = new int[arraySize];
parcel.readIntArray(array[i]);
}
return array;
}
あなたには、いくつかのより多くのコンテキストを提供してもらえますか?さもなければあなたは本当に少数の(役に立つ)答えを得るかもしれません。 – Thomas