Welcome to the Treehouse Community
Looking to learn something new?
UICollectionViewCell imageView property is strong, why?
At 1:03 sam declares the UIImageview property for the cell as strong, is there any reason to this? I thought the ui elements are meant to be declared as weak, since they are dependent on the parent (strong) view
thanks in advance
I think it acts more like an empty picture frame, where you put something else inside.The Xcode documentation tells me :
A UICollectionViewCell object presents the content for a single data item when that item is within the collection view’s visible bounds.
So I think it just holds the view, or data type you want to show, but only that.
Andrew Boryk15,916 Points
Awesome answer to this question, I deserve no credit lol
OK I don't know if this entirely correct, but this is how I understand it :
- "strong" pointers keep objects alive for as a long as there is a value inside them
- "UICollectionViewCell" is a blank canvas [vid at 0:50min mark], it only holds a blank space where I can put something else inside.
- the "imageView" property I just created, contains a pointer to an "UIImageView" object with a strong reference and therefore acts as the owner of that "UIImageView" object.
And that's what I want, I want the "UIImageView" object to be alive for as long as there's a value inside the "imageView" so as to be able to display it inside the "UICollectionViewCell". In this case, the "UICollectionViewCell" is dependant on that "UIImageView" which in turn is dependant on the "imageView".
I don't know if this answers your question or if it's entirely correct, but like I said, that's how I understood the whole thing.