0

次のコードは、が正しく配列に変換されていないNullPointerExceptionため、をスローしています。ArrayList配列は別のアクティビティに渡されることになっています。これは、通常のパスを渡すことができるため機能しますが、を配列にString[]変換しようとするとエラーが発生します。配列ArrayListに変換する正しい方法は何ですか?ArrayList

String[] tmpHtml = new String[(siteElements.size())];
tmpHtml = (String[]) siteElements.toArray();
Intent returnResult = new Intent();
returnResult.putExtra("elements", tmpHtml);
setResult(RESULT_OK, returnResult);
finish();
4

2 に答える 2

3

ArrayListをString配列に変換する方法が間違っていました。正しい方法は次のとおりです。

tmpHtml = siteElements.toArray(tmpHtml);
于 2013-03-14T01:34:13.490 に答える
0

Changwei Yaoの答えはうまくいくでしょうが、なぜですか

// put to intent
returnResult.putStringArrayListExtra("elements", siteElements);
// Get from intent
returnResult.getStringArrayListExtra("elements");
于 2013-03-14T01:56:47.447 に答える