Proč je iboutlet slabý?

Obsah:

Proč je iboutlet slabý?
Proč je iboutlet slabý?
Anonim

@IBOutlet umožňuje Interface Builder rozpoznat zásuvku. private zajišťuje, že k zásuvce není přístup mimo aktuální třídu. slabé se používá, protože ve většině situací není vlastník zásuvky totožný s vlastníkem pohledu. Například ovladač pohledu nevlastní nějaký štítek – pohled ovladače pohledu ano.

Musí být IBOutlets slabé?

Oficiální odpověď společnosti Apple je, že IBOutlets by měly být silné. Jediným případem, kdy by IBOutlet měl být slabý, je, aby se zabránilo cyklu uchování. Silný referenční cyklus může mít za následek úniky paměti a pády aplikací.

Co je IBOutlet Swift?

Kvalifikátor typu IBOutlet je značka použitá na prohlášení o vlastnosti, aby aplikace Interface Builder mohla rozpoznat nemovitost jako zásuvku a synchronizovat její zobrazení a připojení s Xcode. Zásuvka je deklarována jako slabá reference (slabá), aby se zabránilo silným referenčním cyklům.

Co je slabá reference ve Swiftu?

Slabé reference. Slabá reference je odkaz, který nezachovává silnou kontrolu instance, na kterou odkazuje, a tak nezabrání ARC v likvidaci odkazované instance. Toto chování brání tomu, aby se reference stala součástí silného referenčního cyklu.

Jaký je rozdíl mezi slabým a silným ve Swift?

A strong reference znamená, že chcete „vlastnit“objekt, na který odkazujete pomocí této vlastnosti/proměnné. Naproti tomu se slabýmodkaz znamená, že nechcete mít kontrolu nad životností objektu.

Doporučuje: