次の問題があります。ActivityAのデータベースからデータを読み取り、選択した1つの文字列をActivityBに送信して、ListViewに表示したいと思います。インテントを使用して正常に機能していますが、表示できる文字列は1つだけです。ActivityAをリロードした後、listViewがクリアされたと思います。
そこで、次のことを試しました。ArrayLstという別のクラスで、次の2つのグローバル変数を定義しました。
public static ArrayList<String> arrayList = new ArrayList<String>();
public static MyAdapter arrayAdapter=null;
そして、ActivityAでは、onClick関数でこれを行っています。
ArrayLst.arrayList.add(0, myEditText.getText().toString());
ArrayLst.arrayAdapter.notifyDataSetChanged();
Intent intent = new Intent(ActivityA.this, ActivityB.class);
startActivity(intent);
ActivityBでは、リストを表示したいので、これを次のように呼んでいます。
lstView.setAdapter(ArrayLst.arrayAdapter);
ただし、ActivityAのボタンをクリックすると、アプリがクラッシュします。LogCatはそのラインのためにそれを言います
ArrayLst.arrayAdapter.notifyDataSetChanged();
この行を削除してもクラッシュしませんが、結果は得られません。私は何が間違っているのですか?助けてくれてありがとう。
ps:私はAndroidを初めて使用するので、理解できるように答えを単純にしてください:)