@IBOutlet face Interface Builder să recunoască priza. privat se asigură că priza nu este accesată în afara clasei curente. slab este folosit deoarece în majoritatea situațiilor proprietarul prizei nu este același cu proprietarul vizualizării. De exemplu, un controler de vizualizare nu deține someLabel - vizualizarea controlerului de vizualizare o are.
IBOutlet-urile trebuie să fie slabe?
Răspunsul oficial de la Apple este că IBOutlet-urile ar trebui să fie puternice. Singurul caz în care un IBOutlet ar trebui să fie slab este pentru a evita un ciclu de reținere. Un ciclu de referință puternic poate duce la pierderi de memorie și blocări ale aplicației.
Ce este IBOutlet Swift?
Calificatorul de tip IBOutlet este o etichetă aplicată unei declarații de proprietate, astfel încât aplicația Interface Builder să poată recunoaște proprietatea ca priză și să sincronizeze afișarea și conexiunea acesteia cu Xcode. O priză este declarată ca referință slabă (slabă) pentru a preveni ciclurile de referință puternice.
Ce este referința slabă în Swift?
Referințe slabe. O referință slabă este o referință care nu păstrează o putere puternică asupra instanței la care se referă și, prin urmare, nu împiedică ARC să elimine instanța la care face referire. Acest comportament împiedică referința să devină parte a unui ciclu de referință puternic.
Care este diferența dintre slab și puternic în Swift?
O referință strong înseamnă că doriți să „dețineți” obiectul la care faceți referire cu această proprietate/variabilă. În contrast, cu un slabreferință înseamnă că nu doriți să aveți control asupra duratei de viață a obiectului.