0

メインの配列リストをクリアします (sizecheck は 0 と表示されます) が、クラスから addall を再度実行すると、元のデータが新しいデータの前に再表示され、サイズ チェックでこれが確認されます。これを回避する方法はありますか?

明確にするために:私はクリアし続け、arraylistのサイズが0であることをlog cmdで確認したサイズで、新しいデータを再度追加すると合計に追加されます。50をクリア--> 0、次に50を追加= 100、100をクリア--> 0を追加し、再び50を追加すると150など.

このゾンビ データを殺すのを手伝ってください!

以下は要約です:

ArrayList<Integer> imagearray = new ArrayList<Integer>();
....onCreate....
imagearray.clear(); // confirmed this makes arraylist size = 0
imagearray.addAll(animalclass.getpics(songtolearn)); 
// this last line is dragging all the cleared data back and adds the new data too

以下からデータをドラッグします。

public ArrayList<Integer> getpics(int songnumber) {

switch (songnumber) { 
case 1:
  animalpics.add(1);
  animalpics.add(1);
break;
return animalpics;
4

1 に答える 1

0

クラスの動物では、ArrayList animalpics = new ArrayList(); を削除する必要がありました。ここから変数を宣言し、ローカルの getpics コマンド内に配置します。

于 2013-04-14T11:42:47.190 に答える