Mengapa ioutlet lemah?

Mengapa ioutlet lemah?
Mengapa ioutlet lemah?
Anonim

@IBOutlet membuat Interface Builder mengenali outlet. private memastikan outlet tidak diakses di luar kelas saat ini. lemah digunakan karena dalam kebanyakan situasi pemilik outlet tidak sama dengan pemilik view. Misalnya, pengontrol tampilan tidak memiliki someLabel - tampilan pengontrol tampilan memilikinya.

Apakah IBOutlet harus lemah?

Jawaban resmi dari Apple adalah IBOutlet harus kuat. Satu-satunya kasus ketika IBOutlet harus lemah adalah untuk menghindari siklus penyimpanan. Siklus referensi yang kuat dapat mengakibatkan kebocoran memori dan aplikasi mogok.

Apa itu IBOutlet Swift?

Jenis qualifier IBOutlet adalah a tag yang diterapkan ke deklarasi properti sehingga aplikasi Interface Builder dapat mengenali properti sebagai outlet dan menyinkronkan tampilan dan koneksinya dengan Xcode. Sebuah outlet dinyatakan sebagai referensi yang lemah (weak) untuk mencegah siklus referensi yang kuat.

Apa yang dimaksud dengan referensi lemah di Swift?

Referensi Lemah. Referensi yang lemah adalah a referensi yang tidak memegang kuat pada instance yang dirujuk ke, dan dengan demikian tidak menghentikan ARC untuk membuang instance yang direferensikan. Perilaku ini mencegah referensi menjadi bagian dari siklus referensi yang kuat.

Apa perbedaan antara lemah dan kuat di Swift?

A strong referensi berarti Anda ingin "memiliki" objek yang Anda referensikan dengan properti/variabel ini. Sebaliknya, dengan yang lemahreferensi Anda menandakan bahwa Anda tidak ingin memiliki kendali atas masa pakai objek.

Direkomendasikan: