I want to use UICollectionView
to display a horizontal scrollable list of thumbnails, however, I want this to be a single row. On another view, I'm displaying the thumbnails in a UICollectionView
but this one scrolls vertically and it's in a single column.
Currently, the way I'm doing this is by changing the size of the collection view to only be big enough for one item so it autowraps and works, but now I'm dealing with variable sized items so it doesn't work anymore.
How do you make a UICollectionView
display one row or column?
A layout object that organizes items into a grid with optional header and footer views for each section.
UICollectionView is the model for displaying multidimensional data — it was introduced just a year or two ago with iOS 6, I believe. The main difference between the two is how you want to display 1000 items. UITableViewhas a couple of styles of cells stacked one over the other.
From apple's documentation, UICollectionView is: An object that manages an ordered collection of data items and presents them using customizable layouts. The name and definition makes it clear, it is a way to display a Collection of UI Views in our app. The individual view is referred as a Cell.
There are no section headers in the UICollectionView. So for your first task, you'll add a new section header using the search text as the section title. To display this section header, you'll use UICollectionReusableView .
I am guessing you are using the built in Flow Layout
. However, for your case, you should make a custom UICollectionView Layout
. Make it subclass of UICollectionViewFlowLayout
and add this code in the init
method:
- (id)init { if ((self = [super init])) { self.scrollDirection = UICollectionViewScrollDirectionHorizontal; self.minimumLineSpacing = 10000.0f; } return self; }
The minimumLineSpacing
is the key to making it have one line here.
I hope this helps!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With