Dies ist die Methode:Objekt aus einer Liste Remvoing während Iterieren es nicht funktioniert (mit Iterator)
public void deleteEvent(View view){
Intent intent = new Intent(this, MainActivity.class);
for (User myUser:LocalDataBase.getEventByID(eventID).getInvitedUsersTotal()){
for (Event myEvent:myUser.getAttendingList())
{
ListIterator<Event> itr_attending =myUser.getAttendingList().listIterator();
if (myEvent.getId()==eventID){
itr_attending.remove();
}
}
}
Toast.makeText(getApplicationContext(), "The event was deleted",Toast.LENGTH_LONG).show();
startActivity(intent);
}
Diese Methode ist, um ein Ereignis aus der Datenbank zu löschen. Um dies zu tun, muss ich es aus der "Teilnehmerliste" jedes eingeladenen Benutzers entfernen. (Wenn der Benutzer sagt, dass er zu dem Ereignis geht, wird das Ereignis auf diese Liste von ihm verschoben).
Jedes Ereignis hat eine Liste der eingeladenen Benutzer (invitedUsersTotal)
, und für jeden Benutzer sollte die Methode über die Teilnehmerliste gehen und Suche nach dem gewünschten Ereignis (myEvent.getId()==eventID)
, und dann löschen Sie es.
Am Ende wird das Ereignis nicht aus der Teilnehmerliste gelöscht.
Was mache ich hier falsch?
Was funktioniert nicht? Passiert nichts? Explodiert Ihr Computer? – Jokab
Das Ereignis wird nicht aus der Teilnehmerliste gelöscht, sorry dafür – Jack
Was denken Sie, dass Sie aus der Liste entfernen, wenn Sie 'itr_attending.remove()' aufrufen? –