J'ai implémenté un peu de code à partir de l'un des nombreux exemples de code Apple, mais j'ai quelques problèmes, car l'attribut retain de l'une des propriétés ne semble pas fonctionner. Voici la déclaration de propriété:L'attribut de propriété "retain" ne semble pas fonctionner?
@property (nonatomic, retain) EditingViewController *editingViewController;
Et voici le code:
- (EditingViewController *)editingViewController {
// Instantiate the editing view controller if necessary.
if (editingViewController == nil) {
EditingViewController *aController = [[EditingViewController alloc] init];
editingViewController = aController;
[aController release];
}
return editingViewController;
}
Je comprends que (retenir) est censé faire le compte conserver augmenter de 1 en mission; cependant, le code échoue sauf si envoie moi-même [aController conserve], ou n'envoie pas [version du contrôleur]. Qu'est-ce que j'oublie ici?
L'exemple de code m'a vraiment aidé à voir l'erreur de mes manières. Lorsque je résolvais ce problème, j'essayais d'utiliser self.editingViewController sur les trois instances, ce qui bien sûr appelait de manière récursive tableView: editingViewController pour deux d'entre elles. Duh. – JoBu1324