有没有办法在cellForItemAtIndexPath方法中不使用现有的单元格标识符和现有的nib文件来创建UICollectionViewCell? 最佳答案 不需要为CollectionViewCell使用Storyboard/Xib。您甚至可以通过编程方式创建它。子类化UICollectionViewCell并编写单元格的代码。然后在CollectionViewController类中,您必须使用collectionView注册您的自定义单元类[self.collectionViewregisterClass:[Custom
我试图在CollectionView中隐藏一个UICollectionViewCell。虽然当我这样做的时候我就成功了cell.hidden=YES;//orcell.alpha=0.0;但滚动后单元格再次出现。我还尝试了以下方法:UICollectionViewLayoutAttributes*layoutAttr=//I'msuccesfullherelayout.hidden=YES;[cellapplyLayoutAttributes:layoutAttr];我认为这可能是因为我正在使用dequeReusable..方法,因此单元格被重新使用,但是我还尝试在collection
如何放大UICollectionViewCell以便全屏显示?我已经扩展了UICollectionViewFlowLayout并且在我的ViewController中当一个单元格被点击时我正在这样做:CGPointpointInCollectionView=[gesturelocationInView:self.collectionView];NSIndexPath*selectedIndexPath=[self.collectionViewindexPathForItemAtPoint:pointInCollectionView];UICollectionViewCell*selec
自从我迁移到新的iOS9和Xcode7后,我偶然发现我的应用程序中的一个UICollectionView有问题。显然,UICollectionView似乎没有正确更新UICollectionViewCell布局和约束,直到它被重新使用。图片胜于Eloquent——这是第一次看到UIViewController时的样子:然而,这不是正确的布局,当我向左水平滑动UICollectionView时,我很容易得到新出现的单元格的正确布局:当我向后滑动时,不正确的旧单元格现在被重新使用并且看起来不错。现在,就像升级到iOS9和Xcode7之前一样,我想要的效果是单元格即使在第一次出现时也具有正确
我正在使用UICollectionView来显示从URL异步加载的图片网格。我的CollectionView使用可重复使用的单元格来显示UICollectionViewCells。当单元格未被重复使用时,一切都会正确显示,但当我稍微滚动时,重复使用的单元格在开始正常行为之前会短暂闪烁旧内容。这是自定义UICollectionViewController的实现:#import"MyCollectionViewViewController.h"#import"MyCollectionViewCell.h"@interfaceMyCollectionViewViewController()@
我想知道UICollectionViewCell何时显示在实际屏幕上。cellForRowAtIndexPath是不够的,因为此时实际上没有看到单元格。didEndDisplayingCell是不够的,因为当单元格从View中移除时它会被调用。UITableViewDelegate有一个willDisplayCell方法,我发现它在过去对类似的东西很有用,但它似乎不存在于UICollectionViewDelegate。如何确定何时将单元格显示在屏幕上? 最佳答案 创建UICollectionViewCell的子类。覆盖它的didM
我已经用image模式设置了UICollectionView的颜色,如下所示:self.collectionView.backgroundColor=[UIColorcolorWithPatternImage:image];我想在不影响UICollectionViewCell的情况下设置collectionView的alpha。有没有办法做到这一点?设置collectionView的alpha也会影响UICollectionViewCell,所以我已经试过了。我还应该尝试什么/还有什么会真正起作用?感谢任何提示。 最佳答案 使用UI
我正在制作一个iPad应用程序。在此应用程序的一个页面上,左侧有一个UICollectionView,右侧有另一个UICollectionView。每个UICollectionView都是一列宽。我想要的功能如下:左侧的每个UICollectionViewCell都应该能够被拖动到右侧的UICollectionView。如果这不可能,那么至少应该能够将UICollectionViewCell从左侧的UICollectionView中拖出,然后我会处理让它出现在右侧的UICollectionView中。这个功能可行吗?如果是这样,我将如何实现它? 最佳答案
我正在对UICollectionViewCell进行子类化,并使用自动布局在代码中完成所有布局。这是我的初始化方法:-(id)initWithFrame:(CGRect)frame{frame=CGRectMake(0,0,403,533);if(self=[superinitWithFrame:frame]){self.translatesAutoresizingMaskIntoConstraints=NO;PBCardPricesViewController*pricesView=[[PBCardPricesViewControlleralloc]init];[selfaddSub
当用户执行某些操作时,我需要将UICollectionView从底部拉到一定高度。由于该新状态完全是可选的,因此CollectionView是在以这种方式呈现之前创建的。通过更改NSLayoutConstraint的constant属性和在某个动画block中调用[viewlayoutIfNeeded]来执行从下到上的动画。问题是,这样做会使单元格以不希望的方式出现:它们从左上角扩展到指定大小。我希望CollectionView出现,并且它的所有单元格都已经按照最终大小和外观进行了布局。我知道UIView的setAnimationEnabled:方法之类的东西,但我似乎无法找到我应该如