2012-04-10 7 views
0

私はListList、ArrayListを持っています。アクティビティ1から、私はいくつかのデータ、例えば価格と会社名を渡します。このデータは、ハッシュマップのArrayListに格納されます。 ListViewを保持する2番目のアクティビティに最初にデータを渡すと、このリストにデータが格納されますが、最初のアクティビティに戻り、再度情報を渡すと、古いデータはリストに残ります。これが起こるのを防ぐことのできる方法はありますか?たとえば、activity2からactivity1に戻ると、ListViewが消去されます。データのリストビューをクリーニングする

ありがとうございます!あなたが何をする必要があるか

+0

これは変です。最初のアクティビティに戻るときは、2番目のアクティビティはすべてのデータとともに破棄されているはずです。静的変数を除く。両方のアクティビティから関連するコードを転記する必要があります。 – dmon

+0

私は、どんなonStart()メソッドやonDestory()メソッドも持っていないと言わなければなりません。 –

+0

問題ではありません。 – dmon

答えて

2

: をリストビューを保持している活動について - onResume()メソッドをオーバーライド:

@Override 
protected void onResume() { 
    super.onResume(); 

    mArrayList.clear(); 
    mAdapter.notifyDataSetChanged(); 
} 

あなたは配列リストをクリアするためにあなたが行うことができますので、それは、良いではない場合以下:

@Override 
protected void onResume() { 
    super.onResume(); 

    mListView.removeAllViews(); 
} 
+0

ありがとう!これは、メソッドをonDestory()に変更しなければならない場合を除き、機能しませんでした。そうしないと、リストに何も表示されませんでした。 –

+0

ようこそ。私はいつも助けてうれしいです。 –

関連する問題