Logcat d'erreur: “addView(Vue, LayoutParams) n'est pas pris en charge dans AdapterView” dans une ListView

Je suis en train de faire une application pour Android et quelque chose que j'ai besoin, c'est qu'il montre une liste de tous les fichiers et répertoires de la Carte SD et il doit être capable de se déplacer à travers les différents répertoires. J'ai trouvé un bon tutoriel en anddev. J'ai modifié quelques choses de sorte que la demande se déplace dans la Carte SD et non dans Android racine des Répertoires, mais le reste est essentiellement le même.

C'est mon fichier xml pour l'activité:

    <?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@id/android:list"       
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
</ListView>

Et ceci est le code de l'Activité:

    import hackreatorz.cifrador.R;
import java.io.File;
import java.util.ArrayList;
import android.app.ListActivity;
import android.content.res.Configuration;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class ArchivosSD extends ListActivity {
private ArrayList<String> directoryEntries = new ArrayList<String>();
private File currentDirectory = new File("/sdcard/");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
browseToSD();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
private void browseToSD() {
browseTo(new File("/sdcard/"));
}
private void upOneLevel() {
if(this.currentDirectory.getParent() != null)
this.browseTo(this.currentDirectory.getParentFile());
}
private void browseTo(final File directory) {
if (directory.isDirectory()) {
this.currentDirectory = directory;
fill(directory.listFiles());
} else {
Toast.makeText(ArchivosSD.this, this.directoryEntries.get(this.getSelectedItemPosition()), Toast.LENGTH_SHORT).show();
}
}
private void fill(File[] files) {
this.directoryEntries.clear();
this.directoryEntries.add(getString(R.string.current_dir));
if(this.currentDirectory.getParent() != null)
this.directoryEntries.add(getString(R.string.up_one_level));
int currentPathStringLength = (int) this.currentDirectory.getAbsoluteFile().length();
for (File file : files) {
this.directoryEntries.add(file.getAbsolutePath().substring(currentPathStringLength));           
}
setListAdapter(new ArrayAdapter<String>(this, R.layout.archivos_sd, this.directoryEntries));
}   
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
int selectionRowID = (int) this.getSelectedItemPosition();
String selectedFileString = this.directoryEntries.get(selectionRowID);
if (selectedFileString.equals(".")) {
this.browseToSD();
} else if(selectedFileString.equals("..")) {
this.upOneLevel();
} else {
File clickedFile = null;
clickedFile = new File(this.currentDirectory.getAbsolutePath() + this.directoryEntries.get(selectionRowID));
if(clickedFile != null)
this.browseTo(clickedFile);
}
}
}

Je ne reçois pas toutes les erreurs dans Eclipse, mais j'ai un Force Close lors de l'exécution de l'application sur mon téléphone et quand je regarde Logcat je vois les suivantes:

01-01 23:30:29.858: ERREUR/AndroidRuntime(14911): FATAL EXCEPTION: les principaux
01-01 23:30:29.858: ERREUR/AndroidRuntime(14911): java.lang.UnsupportedOperationException: addView(Vue, LayoutParams) n'est pas pris en charge dans AdapterView

Je n'ai pas la moindre idée de quoi faire, j'ai regardé sur Google et je ne trouve rien et j'ai fait la même à stackoverflow. C'est ma première application en Java et Android, donc je suis un vrai n00b et si la réponse était là, je ne comprenais pas, alors je serais vraiment reconnaissant si vous pourriez nous expliquer ce que je dois faire pour corriger cette erreur et pourquoi.

Merci pour tout à l'avance.