Zašto je iboutlet slab?

Sadržaj:

Zašto je iboutlet slab?
Zašto je iboutlet slab?
Anonim

@IBOutlet čini da Interface Builder prepozna utičnicu. private osigurava da se izlazu ne pristupa izvan trenutne klase. slab se koristi jer u većini situacija vlasnik utičnice nije isto što i vlasnik pogleda. Na primjer, kontroler pogleda ne posjeduje neku oznaku - pogled kontrolera pogleda posjeduje.

Da li IBOutleti moraju biti slabi?

Službeni odgovor Apple-a je da bi IBOutleti trebali biti jaki. Jedini slučaj kada bi IBOutlet trebao biti slab je da bi se izbjegao ciklus zadržavanja. Snažan referentni ciklus može dovesti do curenja memorije i pada aplikacija.

Šta je IBOutlet Swift?

Kvalifikator tipa IBOutlet je oznaka primijenjena na deklaraciju svojstva tako da aplikacija Interface Builder može prepoznati svojstvo kao izlaz i sinkronizirati prikaz i povezivanje sa Xcode-om. Izlaz je deklariran kao slaba referenca (slaba) kako bi se spriječili jaki referentni ciklusi.

Šta je slaba referenca u Swiftu?

Slabe reference. Slaba referenca je referenca koja ne drži snažno instancu na koju upućuje, i tako ne sprečava ARC da odbaci referenciranu instancu. Ovo ponašanje sprječava da referenca postane dio snažnog referentnog ciklusa.

Koja je razlika između slabog i jakog u Swiftu?

A strong referenca znači da želite da “posjedujete” objekt koji referencirate sa ovom svojstvom/varijablom. Nasuprot tome, sa slabimreferencu označavate da ne želite imati kontrolu nad životnim vijekom objekta.

Preporučuje se: