J'ai une liste réalisée par un adaptateur personnalisé basé sur un curseur. P>
Le curseur que je lui donne est basé sur une liste de notes dans la base de données (chaque note est une rangée de DB). P>
Tout fonctionne bien jusqu'à ce que je supprime une note de la base de données. Je ne sais pas comment mettre correctement la mise à jour du curseur / de l'adaptateur / ListView pour afficher les nouvelles données. P>
J'ai lu des messages contradicteurs sur l'utilisation de Quelqu'un pourrait-il démontrer le moyen approprié de mettre à jour les données de support, puis de l'interface utilisateur (avec PSEDEDOCODE si possible). P> Adapter.notifyDataSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSetSory.Requery () Code> Pour rafraîchir l'interface utilisateur, mais aucun d'entre eux ne semble fonctionner dans ce Cas. La seule façon dont j'ai été en mesure d'actualiser est en créant un nouveau curseur à partir d'une nouvelle requête et d'appeler
adaptateur.chancursor (NewCursor) code>. P>
3 Réponses :
Vous devez requête code>, puis
notifydatastetchanged code>. p>
Je pense que le modèle de demande a été obsolète à partir de nid d'abeille (au moins non recommandé). Cursorloader est la méthode préférée actuellement.
Appeler demandera ré-exécuter la requête exacte utilisée pour créer le curseur - c'est-à-dire que cela ne réexécutera pas la méthode réelle de votre code. Donc, si votre méthode contient des éléments dynamiques tels que le tri basé sur une préférence, il ne sera pas mis à jour. Dans ce cas, vous ne voulez pas utiliser la même requête, vous voulez un autre. P>
C'est ce qui fonctionne pour moi, je ne suis pas sûr de son meilleur moyen. Je rafraîchis le seul curseur, je ne sais pas quoi faire avec un nouveau.
Aussi, je ne comprends pas que le pepole répondit avec un nom d'une fonction. P> p>