我一直在阅读并查看应用程序示例,但我仍然不确定如何实现一个通过分页推送到详细视图的集合视图?
我能够获得一个集合视图以推送到静态详细信息视图(遗憾的是没有标题),我可以在没有集合视图的情况下进行分页工作但不能同时进行!我还需要接受一个标题,这是一个重要的部分。
请有人帮助我,因为我可能很快就会疯了:)
非常感谢提前!
答案 0 :(得分:2)
只需将另一个集合视图控制器按流布局,水平滚动方向,已启用paging
属性并将布局的itemSize
属性设置为全屏。在将此控制器的设置内容偏移推送到选定图像之前。请尝试以下代码。您应该致电initWithCollectionViewLayout
初始化您的收藏视图。
-(id)initWithCollectionViewLayout:(UICollectionViewLayout *)layout {
if (self = [super initWithCollectionViewLayout:layout]) {
[self.collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"Cell"];
UICollectionViewFlowLayout *layout = (UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout;
layout.itemSize = self.collectionView.bounds.size;
layout.minimumLineSpacing = 0;
layout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
self.collectionView.pagingEnabled = YES;
// In order to see cells you can declare something like colors array in .h
self.colors = @[[UIColor redColor], [UIColor greenColor], [UIColor blueColor]];
}
return self;
}
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
return 1;
}
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return self.shopNames.count;
}
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell = [self.collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
[cell.contentView setBackgroundColor:self.colors[indexPath.item]];
return cell;
}
P.S。要设置内容偏移,请使用[self.collectionView setContentOffset:CGPointMake(40, 0)];