Tag: uicollectionviewcell

如何为ios中的collection view view cell编写宽度和高度,swift 3

我尝试以编程方式给出collectionViewCell的高度和宽度。 我用下面的方法: func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { let viewWidth = self.deviceWidth/3 – 5 let viewHeight = viewWidth return CGSize(width :100,height: 100) } 这没有奏效。 即使这种方法并没有显示为一个提示。 帮助我这个。 有没有其他的委托方法来设置单元格的宽度和高度编程Swift 3?

ios – 水平滚动collectionView与图像

我正试图在collectionView上显示图像。 我有麻烦显示这个图像,因为我已经创build了一个可重复使用的单元格与imageView内部。这些图像必须等间隔,因为我想在屏幕上一次显示3个图标。 我使用13个图标,它必须通过屏幕水平滚动。 我不能在单元格中显示图像,我不知道如何使用一个可重用的单元格来设置图像单元之间的间距 CustomCollectionViewCell.h @interface CustomCollectionViewCell : UICollectionViewCell @property (nonatomic, retain) UIImageView *imageView; @end CustomCollectionViewCell.m @implementation CustomCollectionViewCell – (UIImageView *) imageView { if (!_imageView) { _imageView = [[UIImageView alloc] initWithFrame:self.contentView.bounds]; [self.contentView addSubview:_imageView]; } return _imageView; } – (void)prepareForReuse { [super prepareForReuse]; [self.imageView removeFromSuperview]; self.imageView = nil; } @end LandingViewController.m – (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(nonnull […]

一次加载一个UICollectionViewCell

按照这篇文章http://aplus.rs/2014/how-to-animate-in-uicollectionview-items/我试图一次加载一个UICollectionViewCellanimation单元格出现时。 但是,当我调用代码循环cellCount ++,它会产生这样的错误: 由于未捕获的exception“NSInternalInconsistencyException”而终止应用程序,原因是:“无效的更新:部分0中的项目数目无效。更新(1)之后现有部分中包含的项目数量必须等于(1),加上或减去从该部分插入或删除的项目数(插入1个,删除0个),加上或减去移入或移出该部分的项目数(0移入,0移入出)。” 我不能为我的生活弄清楚。 这是我的代码: -(void)addCells{ for (self.cellCount=0; self.cellCount<50; self.cellCount++) { [self.collectionView performBatchUpdates:^{ [self.collectionView insertItemsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForItem:self.cellCount inSection:0]]]; } completion:nil]; } }

在UICollectionView中滚动2 – 3次后,单元格消失

我在滚动我的UICollectionView一个奇怪的问题。 它显示一个没有任何单元格的空白视图。 它奇怪地隐藏我的细胞或删除我的细胞,我不知道,但我无法find任何解决scheme。 我已经尝试从这些解决scheme: 第一:试图创build自定义类的UICollectionViewFlowLayout并按照指示与所有不同的方法,但无法解决我的问题。 第二:尝试下面的方法重新分配和重新计算我的单元格大小: -(BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds { return YES; } 我跟随的链接: Que1: UICollectionView的单元格消失 Que2: 使用我自己的UICollectionViewFlowLayout子类滚动时,UICollectionView项目消失 请指导我什么是错误的与自定义单元格简单collectionview。 参考图片: 滚动之前: 滚动后:

在滚动期间重用UICollectionViewCells

我有一个问题, 我有一个简单的UICollectionView与静态200单元格,从Flickr加载图像。 我的CellForItemAtIndexPath看起来像这样: – (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath { UICollectionViewCell *cell = [cv dequeueReusableCellWithReuseIdentifier:@"FlickrCell" forIndexPath:indexPath]; cell.backgroundColor = [self generateRandomUIColor]; if(![[cell.subviews objectAtIndex:0] isKindOfClass:[PFImageView class]]) { NSURL *staticPhotoURL = [self.context photoSourceURLFromDictionary:[self.photos objectAtIndex:indexPath.row] size:OFFlickrSmallSize]; PFImageView *imageView = [[PFImageView alloc] initWithFrame:CGRectMake(0, 0, cell.frame.size.height, cell.frame.size.width) andImageURL:staticPhotoURL andOwningCell:cell]; [cell addSubview:imageView]; } return cell; } PFImageView是UIImageView一个子类,它在后台线程上加载一个Flickr照片URL,然后在主线程上更新它自己的图像 – 这工作正常。 逻辑非常简单 – 如果没有一个可出队的话,我创build一个单元格。 […]

与AFNetworking在UICollectionView错误asynchronous下载

您好我正在创buildUICollection视图与清单目录,而点击单元格上的PDF必须下载,它在一个视图完美的工作,但在另一个视图给出的错误 * thread #1: tid = 0x4b2ce, 0x000000018d14f9b8 CoreFoundation`CFURLCopyScheme + 56, queue = 'com.apple.NSURLSession-work', stop reason = EXC_BAD_ACCESS (code=1, address=0x0) frame #0: 0x000000018d14f9b8 CoreFoundation`CFURLCopyScheme + 56 frame #1: 0x000000018cdab96c CFNetwork`_urlIsHTTPish + 16 frame #2: 0x000000018cdc76b0 CFNetwork`URLRequest::addOverridingSessionAttributes(_CFURLSessionConfiguration*) + 288 frame #3: 0x000000018ce38964 CFNetwork`ClassicConnectionSession::createConnectionWithProperties(_CFURLRequest const*, __CFDictionary const*) const + 548 frame #4: 0x000000018ce10bcc CFNetwork`__73-[__NSCFLocalSessionBridge downloadTaskForRequest:resumeData:completion:]_block_invoke + 224 […]

自定义UICollectionCell的nil标签

编辑 :看起来像这个相同的问题 我使用自定义布局和单元格进行了集合视图,但是我的单元格的位置有点偏移,所以我决定对它们进行编号,以便我可以更轻松地进行debugging。 我跟着这家伙的回答 ,使用标签给我的单元格编号。 不知何故, myLabel是零,导致我的应用程序崩溃。 我相信我已经正确连接了网点,但也许有人可以提供一个列表来检查我是否做错了什么。 视图控制器 import UIKit class ViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate { @IBOutlet var gridView: UICollectionView! private let reuseIdentifier = "DesignCell" private let numberOfSections = 1 private let numberOfCircles = 48 override func viewDidLoad() { super.viewDidLoad() self.gridView.registerClass(MyCell.self, forCellWithReuseIdentifier: reuseIdentifier) } func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int { return numberOfSections } func […]

在select上animationuicollectionview单元格

我已经创build了一个customlayout,并像这样在layoutAttributesForItemAtIndexPath中设置了我的单元格位置属性 attributes.center = CGPointMake((size.width/2 – 100) + 100, (size.height/2 – 150) +100); 我想在选中时为单元格设置animation。 复制我们用initialLayoutAttributesForAppearingItemAtIndexPath & finalLayoutAttributesForDisappearingItemAtIndexPath获得的animationfinalLayoutAttributesForDisappearingItemAtIndexPath 。 我想这样做,当一个单元格被选中和取消select。 例如: 单元格A在位置0,0 。 单元格B在位置50,100 。 如果我select单元格B,我想将其设置为0,0 。 同时使单元格A的值为50,100 。 基本上切换位置,但animation。

如何将自定义视图添加到JSQMessagesViewController单元格,以便它包含一个视图与一些button和文本视图?

我正在使用https://github.com/jessesquires/JSQMessagesViewController/issues/1820此库用于聊天应用程序。 通过使用这个库,我能够发送图像和video,但我的应用程序需要发送一个button和文本一个视图。 就像用户发送一些文本一样,它会以文本和button的forms显示给其他人,然后当有人点击button时,会产生一个推送通知。 我无法弄清楚,我怎么能做到这一点。 这里是我想要我的自定义视图的屏幕截图。 它有一些文本用户键入,并有2个button接受和拒绝。

在单元之间的UICollectionView中设置/覆盖填充

我有一个UICollectionView,我遇到了单元格之间的填充问题。 从理论上讲,我应该可以将屏幕分成4份,我可以得到一个有4张图像的细胞大小,它们完全占据屏幕宽度。 但是,它select不这样做。 相反,它会创build3个带有巨大填充的图像,如下所示: _cellSize = CGSizeMake(UIScreen.mainScreen().bounds.width/4,UIScreen.mainScreen().bounds.width/4) 所以我减less了单元格大小来创build一些填充,这是更接近,但我需要大约一半的填充: _cellSize = CGSizeMake(UIScreen.mainScreen().bounds.width/4.4,UIScreen.mainScreen().bounds.width/4.4) 所以我试着让单元格更大一些,然后翻到下一行,并把3个项目再次填充为HUGE。 _cellSize = CGSizeMake(UIScreen.mainScreen().bounds.width/4.3,UIScreen.mainScreen().bounds.width/4.3) 我可以指定单元格之间的填充没有它决定,如果填充低于“X”数量,它创build一个新的行,而不是? 就像我可以设置一个新的行之前的阈值填充说,0? 我想让它变得如此薄弱: