2016-07-21 68 views
1

Wie aktualisierenChild Liste innerhalb Expandable List ViewAktualisieren Listenansicht programmatisch innerhalb Adapter

Ich verwende folgenden Code Kind Liste Artikel, aber unable to refresh Kinderartikelliste löschen.

Eigentlich bekomme ich nicht, wo ich die Änderung vornehmen muss? Was genau habe ich verpasst? :

Bitte lassen Sie mich wissen, wo ich Mistake mache? Was ich vermisse?

Antwort

1

Sie haben diesen Eintrag aus Ihrer Datenbank entfernt, aber nicht aus der HashMap entfernt. Entfernen Sie es auch aus HashMap und rufen Sie dann notifyDataSetChanged() auf.

+0

Ich habe es versucht: _listDataChild.remove (childPosition); notifyDataSetChanged(); aber ich habe keinen Erfolg – Oreo

+0

@Oreo Verwenden Sie Debugging. Setzen Sie den Breakpoint in getChildView(). Überprüfen Sie nach der Benachrichtigung, was Ihre neue Liste in HashMap ist. Vielleicht wird HashMap nicht auf diese Weise aktualisiert, und Sie müssen die geänderte Liste erneut entsprechend diesem Schlüssel hinzufügen. Debugging wird helfen :) – berserk

+0

bekommen die gleichen Datensätze vor und nach dem Entfernen von Daten aus der Datenbank in HashMap ... Ich bin nicht in der Lage, Daten aus HashMap zu entfernen, während Daten aus der Datenbanktabelle entfernt wurde ... überprüfen Sie bitte aktualisierten Code – Oreo

0

Bevor Sie notifyDataSetChanged() aufrufen, müssen Sie die Liste neu laden, die Ihren Adapter unterstützt. notifyDataSetChanged() teilt dem Adapter mit, dass sich die Liste geändert hat und lädt die Liste neu. Sie müssen jedoch die Sicherungsliste für den Adapter für die Liste laden, um die Ansichten anzuzeigen.