UICollectionView:一行或一列 [英] UICollectionView: One Row or Column
问题描述
我想使用 UICollectionView
来显示缩略图的水平可滚动列表,但是,我希望这是一行。在另一个视图中,我在 UICollectionView
中显示缩略图,但是这个缩略图垂直滚动,它在一列中。
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.
如何让 UICollectionView
显示一行或一列?
How do you make a UICollectionView
display one row or column?
推荐答案
我猜您正在使用内置的 Flow Layout
。
但是,对于您的情况,您应该进行自定义 UICollectionView布局
。
使它成为 UICollectionViewFlowLayout
的子类,并在 init
方法中添加此代码:
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;
}
minimumLineSpacing
是让它在这里有一行的关键。
The minimumLineSpacing
is the key to making it have one line here.
我希望这有帮助!
这篇关于UICollectionView:一行或一列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!