Re: Put UICollectionView within UITableViewCell
Re: Put UICollectionView within UITableViewCell
- Subject: Re: Put UICollectionView within UITableViewCell
- From: Cosmo Birch <email@hidden>
- Date: Fri, 09 Mar 2018 08:14:57 -0800
Where I work we have spent a fair amount of trying unsuccessfully to get
self-sizing collection view cells to work as described by Apple documentation
with UICollectionViews that have any sort of complexity. I would suggest trying
to implement the sizeForItemAtIndexPath delegate method to see if that solves
your problem. Sorry if the name of the method is slightly off. I can’t look it
up at the moment.
> On Mar 9, 2018, at 8:00 AM, Glen Huang <email@hidden> wrote:
>
> Hi,
>
> I asked a question about putting UICollectionView within UITableViewCell on
> Apple Developer Forums (https://forums.developer.apple.com/thread/98176), but
> it doesn’t get many replies. I’m not sure if it’s ok to repost the question
> here. I apologize if it’s not.
>
> Here is the question:
>
> Hi, I'm trying to create a table view with cell content like this
>
> | Label |
> | CollectionItem 1 CollectionItem 2 CollectionItem 3 |
> | CollectionItem 4 |
>
> Collection view item should auto wrap at cell end, both the collection view
> and table view use automatic height.
>
> I can somewhat achieve this effect by doing:
> put the label and the collection view in a vertical stack view, make the
> stack view's each edge touch table cell's corresponding edge.
> disable collection view scrolling.
> collection view's intrinsicContentSize returns layout's
> collectionViewContentSize value.
> in table cell's prepareForReuse method, I make the collection view reload its
> data.
>
> But the problem comes when each table cell can contain different number of
> collection items: some table view cells have incorrect heights, clipping its
> collection view. My guess is that when table cells get reused, they don't
> take collection view's new intrinsicContentSize into account.
>
> I tried calling sizeToFit/layoutIfNeeded/updateConstraints in cell's
> prepareForReuse method, none of them works.
>
> If I replace the collection view with a multiline label, and make each cell
> contain different length of text, the cells all have correct heights.
>
> I wonder why label are able to correctly resize cells? how can I make
> collection views do the same?
>
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden