Problem mit ListView

T

toob1994

Neues Mitglied
0
Hallo Liebe Android Gemeinde

ich habe in den letzten paar Tagen versucht einen Fileexplorer für mein Android zu erstellen. Jetzt habe ich folgendes Problem:

Ich kann die Files in Eclipse im LogCat alle ausgeben, aber wenn ich versuche sie in einer ListView auszugeben, erhalte ich immer nur den letzten Ornder ausgegeben.

Meine Vermutung ist, dass der ArrayAdapter immer wieder gelöscht wird, (nicht nur Vermutung, ist vermutlich auch so). Wie kann ich eine ListView in einer For schleife immer wieder ergänzen?
Hier meine Methode:


Code:
public void listDir(File dir) {ListView lv1 = (ListView) this.findViewById(R.id.listView1);  File[] files = dir.listFiles();if (files != null) {  for (int i = 0; i < files.length; i++) {System.out.println(files[i].getAbsolutePath());  // By using setAdpater method in listview we an add string array in list.lv1.setAdapter(yourAdapter);yourAdapter = (new ArrayAdapter<File>(this, android.R.layout.simple_list_item_1, files));  listDir(files[i]);  if (files[i].isDirectory()) {  System.out.print(" (Ordner)\n");//hier sollte ich noch etwas einfügen können, damit am schluss immer steht dass es ein Ordner ist. (im Debug funktionierts mit System.out.println)  listDir(files[i]);    }else {  System.out.print(" (Datei)\n");  //hier sollte ich noch etwas einfügen können, damit am schluss immer steht dass es eine Datei ist.  listDir(files[i]);   }   }     }  }  public void rootdirectory(){  TextView tv4 = (TextView) this.findViewById(R.id.textView4);  File dir3 = Environment.getRootDirectory();tv4.setText(dir3+"");  listDir(dir3); //hier wird der Pfad mitgegeben für ListDir  }
Vielen Dank für eure Hilfe

Gruss
toob1994
 
Könntest du den Code vielleicht mal so Posten das man es auch lesen kann?
Das ist ja furchtbar. Ich glaube so wird dir niemand helfen wollen...
 
Code:
public void listDir(File dir) 
{ListView lv1 = (ListView) this.findViewById(R.id.listView1); 
 File[] files = dir.listFiles();if (files != null) 
{  for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getAbsolutePath());  
// By using setAdpater method in listview we an add string array in list.
lv1.setAdapter(yourAdapter);
yourAdapter = (new ArrayAdapter<File>(this, android.R.layout.simple_list_item_1, files));  listDir(files[i]);  if (files[i].isDirectory()) 
{  
System.out.print(" (Ordner)\n");
//hier sollte ich noch etwas einfügen können, damit am schluss immer steht dass es ein Ordner ist. (im Debug funktionierts mit System.out.println) 
 listDir(files[i]); 
}else {  
System.out.print(" (Datei)\n"); 
 //hier sollte ich noch etwas einfügen können, damit am schluss immer steht dass es eine Datei ist. 
 listDir(files[i]); 
  }   
}    
 } 
 }  
public void rootdirectory()
{  TextView tv4 = (TextView) this.findViewById(R.id.textView4); 
 File dir3 = Environment.getRootDirectory();
tv4.setText(dir3+"");  
listDir(dir3);
 
Wichtig ist was in deiner Activity steht...
Den Adapter setzt man normalerweise dort und nicht in irgendeiner Methode.
Kannst du mal deinen Code zur Activity posten?
 

Ähnliche Themen

A
Antworten
10
Aufrufe
1.021
swa00
swa00
S
Antworten
4
Aufrufe
995
Sempervivum
S
D
Antworten
9
Aufrufe
1.768
jogimuc
J
Zurück
Oben Unten