2010-10-21 4 views
1

Bonjour, j'ai trouvé un problème avec mon DataSource de mon UITableView. Chaque fois que j'essaie de remplir NSMutableArrayData dans la méthode "addDataSection", l'ensemble data-Array est défini sur l'actuel Names-Array.fuite de mémoire avec des données UITableViewDataSource?

Tout semble fonctionner, jusqu'à ce que j'écris les noms dans le tableau et invoque [Names removeAllObjects]. Même dans la méthode "addDataSection" mon nom Names Array semble être correct, donc j'ai peut-être un problème avec une fuite de mémoire?

Ce ist la mise en œuvre de la méthode d'initialisation dans la source de données objet (appels addDataSection):

-> regardez le code suivant

a jamais vu quelqu'un des problèmes comme cela se produit dans c objectif?

+0

Qu'est-ce que vous essayez avec [Noms init]; ???? –

Répondre

1

Il y a des tonnes de fuites dans votre code. Voici quelques-unes:

  • tempNames
  • currentPhoneNumber
  • currentEmail
  • tempDict

également

[Names init]; 

Ne jamais envoyez un init un objet, sauf juste après alloc.

0

Vous ne libérez pas tempDict.

Et comme le dit Ahmet, qu'est-ce que [Names init]?

+0

ok mais ce n'est pas le problème du tout, même si je le libère j'ai ces problèmes. – user476567

+0

Le nom doit être un argument pour addDataSectionWithCategory. Le problème est que Names est ajouté à votre dictionnaire, mais après, vous supprimez tous les objets. Les noms ne sont pas copiés. –

+0

Au lieu de [Noms removeAllObjects]; vous devriez faire Names = [[NSMutableArray alloc] init]; –