2つのアクティビティ間で文字列のarrayListを送信しようとしています。 arrayListは両方のアクティビティで明示的に初期化され、getIntentから引き出されたarrayListと等しくなるように設定されます。ArrayListがインテントnullポインタを渡しました
ArrayList elements = new ArrayList<String>(); // initialize elements
要素初期化され、それははaddElement要素に続いてはaddElement
addElementButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent toAddElement = new Intent(NewRemote.this, addElement.class);
toAddElement.putStringArrayListExtra("element_list", elements);
startActivity(toAddElement);
}
});
に送られ、初期化され、その後、ArrayListに等しく設定される:ここ
は、最初のアクティビティ関連するコードがあります意図から引き抜いた
ArrayList elements = new ArrayList<String>();
Intent getElements = getIntent();
elements = getElements.getStringArrayListExtra("element_list");
私はNULLポインタを取得していますelements.add()私は少し遅れ
addButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
elements.add(selectedElement);
Intent toNewRemote = new Intent(addElement.this, NewRemote.class);
toNewRemote.putStringArrayListExtra(ELEMENT_LIST, elements); // send elements to newRemote
startActivity(toNewRemote);
}
});
私は要素が明確に初期化されるときに、私はNULLポインタを取得することができますどのようにように混乱していますが、任意のヘルプは高く評価され、それを呼び出すとき。
私はこの問題を2日間解決するための解決策を探していましたが、同様のスレッドは見つかりませんでした。
ありがとうございます!
は、あなたが 'elements'あなたが'上の第二に、 'Activity'がある)(追加'呼んでいることが確実なのに役立ちますあなたは初期化していますか?つまり、決して初期化されていないフィールドとして2番目の 'elements'を宣言していないのでしょうか? –
ログの完全な猫のエラーを投稿できますか? – wnieves19
あなたのAndroid Studio(実際には単なるIDE)で適切なJava言語を使用してAndroid Appを開発してみてください。 – statosdotcom