如何在objective-c中随时在屏幕上只显示集合视图的一个单元格

Posted

技术标签:

【中文标题】如何在objective-c中随时在屏幕上只显示集合视图的一个单元格【英文标题】:How to display only one cell of the collection view on the screen anytime in objective-c 【发布时间】:2017-07-03 08:13:54 【问题描述】:

我有一个带有自定义collectionviewcellcollectionview。我想制作一个在任何时候都只在屏幕上显示一个图像的画廊。我必须做什么? 这是我的代码:

[myCollectionView registerClass:[myCustomCollectionViewCell class] forCellWithReuseIdentifier:"myIdentifier"];

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath

    myCustomCollectionViewCell *cell = (myCustomCollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"myIdentifier" forIndexPath:indexPath];
    cell.layer.masksToBounds=NO;
    cell.imageView.image = [UIImage imageNamed:@"image"];
    return cell;


【问题讨论】:

您需要在 sizeForItemAtIndexPath 中提供您想要的框架,并启用 uicollectionview 的分页属性,也请展示您的一些努力,否则这里没有人可以免费为您编写完整的代码。检查下面的 Neha Gupta 代码并尝试根据您的要求实施 是的,谢谢。@HardikThakkar 【参考方案1】:

首先,像下面这样注册你的集合视图类

[yourCollectionView registerClass:[yourCustomCollectionViewCell class] forCellWithReuseIdentifier:"yourIdentifier"]; 

二、实现collection view datasource方法

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section

    return 1;


-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath

    yourCustomCollectionViewCell *cell = (yourCustomCollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"yourIdentifier" forIndexPath:indexPath];
    cell.layer.masksToBounds=NO;
    cell.imageView.image = [UIImage imageNamed:@"yourImageName"];
    return cell;



- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath 

    // update size accordingly
    return CGSizeMake(100,100);

【讨论】:

以上是关于如何在objective-c中随时在屏幕上只显示集合视图的一个单元格的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Altair 图表上只显示一个系列

swift 在iOS上只旋转一个屏幕

在 Objective-C 中让我的 UIViewController 全屏显示

如何在ios objective-c 应用程序中使屏幕的全部内容滚动

Objective-C - 性能

如何在数字字段上只允许2位小数