nein, kein Fehler. Nur eine... Einschränkung.
Wenn du den letzten Eintrag markiert hast, und diesen löschst, dann springt die Markierung wieder zum Letzten (weil ja was markiert sein muss). Dieserletzte war vorher der vorletzte. Dann prüft er wieder, ob der Selected ist, und wieder löscht er ihn und wieder springt er eins zurück usw. Kettenreaktion -> alles gelöscht.
Auf die Schnelle:
Halte zuerst fest, welche Einträge markiert sind, und lösche sie erst dann, wenn du alle Eitnräge hast. Ein Anfang, der langsam, untypisch und ein schlechter Programmierstyl ist, aber dennoch die Aufgabe löst, wäre ein Array of Boolean, das genauso lang ist wie die Liste. Für jeden Index in der Liste guckst du zuerst ob er markiert ist und setzt dann entsprechend ium Array auf True. Alle, die True sind, löschst du dannach. Optimiertere und geschicktetre Methoden überlasse ich deinem Hirn.
_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk.
- Dilbert