Wenn ich einige Interface Builder-Objekte als Instanzvariablen an ein anderes Objekt binden möchte, müssen sie in der Dealloc-Methode des übergeordneten Objekts freigegeben werden? Der wichtige Punkt ist, dass ich meine IBOutlets mit Schlüsselwertcodierung (@property) im (nichtatomaren, behaltenen) Modus deklariere. In meiner Theorie werden IBOutlet-Objekte erstellt, wenn initWithNibName: ... die Methode meines View-Controllers aufgerufen wird und vom übergeordneten Objekt beibehalten wird, weil ich eine @property-Methode im Retain-Modus implementiert habe. Ist das richtig? Was ist, wenn ich die Methode im Zuweisungsmodus implementiere?Objective-C IBOutlet-Objekte werden freigegeben?
3
A
Antwort
2
Absolut korrekt. Sie müssen die Eigenschaften (beibehalten) in dealloc, IBOutlet oder nicht freigeben. Auf diese Weise ist die Speicherverwaltung für IBOutlets klar definiert.
Wenn Sie IBOutlets aus bereits vorhandenen Objekten verdrahten (z. B. Unteransichten von ansonsten beibehaltenen Ansichten), können Sie auch Ihre Eigenschaften verwenden (zuweisen) (und natürlich nicht in dealloc freigeben).
Verwandte Themen
- 1. Warum werden keine Tablezellen freigegeben?
- 2. Wann werden freigegebene Lesesperren freigegeben?
- 3. 2D Dynamische Speicherzuweisung - ObjectiveC
- 4. ObjectiveC-Blöcke Java-Äquivalent
- 5. AMF0 Parser in ObjectiveC
- 6. NSString-Variable: Soll es freigegeben werden?
- 7. Wann soll das NSUrConnection-Objekt freigegeben werden?
- 8. Wie können mögliche Postgres-Zeilensperren freigegeben werden?
- 9. Wie können SoundPool-Objekte ordnungsgemäß freigegeben werden?
- 10. Fragmente werden nicht aus dem Speicher freigegeben
- 11. Wie späte gebundene COM-Objekte freigegeben werden?
- 12. IOS Core Animation Objekte werden nicht freigegeben
- 13. Speicher kann nicht in C freigegeben werden
- 14. Wann dynamisch erstellte Objekte freigegeben werden sollen
- 15. Überprüfung, ob ein Zeiger freigegeben werden kann
- 16. Objekt kann nicht vom Werk freigegeben werden
- 17. Wann kann ein NSThread sicher freigegeben werden?
- 18. Muss Speicher für lokale Zeit freigegeben werden?
- 19. Wie kann verhindert werden, dass Eigenschaften zwischen Widgets freigegeben werden?
- 20. ObjectiveC - Anzeigefenster durch verteilte Objekte
- 21. ObjectiveC - wie NSUserNotification Kennung Eigenschaft
- 22. Präsentieren Sie kleine ModalViewController ObjectiveC
- 23. ObjectiveC: Wo private Instanzeigenschaften deklarieren?
- 24. SQL-Verbindung wird freigegeben
- 25. ObjectiveC UISwitch Standard auf OFF setzen
- 26. TwitPic API von ObjectiveC/iPhone verwenden
- 27. ObjectiveC - Freigabe von Objekten als Parameter
- 28. Verhindern Methode in Grails Controller als Aktion freigegeben werden
- 29. Heap-Korruptionsfehler; cv :: Mat opencv kann nicht freigegeben werden
- 30. Ausnahme in Hibernate 'Verbindung kann nicht freigegeben werden'?