Bonjour,
je crois que ma question est assez bateau mais bon !
Je souhaite utiliser un "working" fragment pour sauvegarder des objets pendant un changement de configuration.
La méthode est simple pourtant je me pose une question.
Il est indiqué dans la doc qu'il ne faut pas utiliser cette technique pour sauvegarder un objet qui "dépend" du context aqa (si j'ai bien compris), qui a une référence sur le context
sous peine d'une fuite mémoire (non garbage collectage ! de l'activité).
Du coup évidemment on ne peut pas sauvegarder un adapter puisqu'il a une référence sur le context. Si on garde l'adapter on garde la référence et donc comme le context à une référence sur lui il n'est pas libéré.
Mais peut t'on sauvegarder par cette technique l'objet (un grosse arraylist ici) qu'on utilise pour initialiser l'adapter :
private final ArrayList<Calendar> mAgenda = new ArrayList<>();
....
AgendaAdapter mAdapter = new AgendaAdapter(mAgenda, this);
Proposition de réponse : oui; mAgenda n'a pas de référence sur l'adapter(c'est l'adapter qui a une référence sur l'agenda) et donc l'adapter peut être détruit et "libérer" sa référence sur le context, donc l'activité peut ici être détruite (en fait c'est un problème de sens !)
Ai-je bien compris le truc ou ai-je tout faux !
Merci par avance de vos réponses
Partager