jjzjj

UICollectionViewFlowLayout

全部标签

ios - Collection View 、自动布局 UICollectionViewFlowLayout 和 itemSize

我真的在努力实现一些相当简单的事情:我想创建一个水平CollectionView,其中UICollectionViewCells是UICollectionView的大小本身。到目前为止一切顺利,我已经在Storyboard中设置了一个ViewController,看起来像这样(注意:CollectionView不等于ViewController的大小):+--------------------------+|||SomeView|+--------------------------+问题:尽管显式设置了itemSize,但CollectionView的单元格似乎不是Collecti

ios - 发送消息动画像iMessage发送消息使用UICollectionView自定义

我正在开发聊天应用程序。我正在使用UIcollectionview来显示消息。我正在尝试在发送按钮上创建动画。当用户点击发送UIButton时,我需要像iMessage这样的动画。为了创建这样的动画,我使用了两种不同的方式但没有得到正确的动画。我创建了一个演示。在那个演示中,我实现了不同的方法。演示链接:https://www.dropbox.com/s/z8rxjkpuxzs95kp/AdvanceCollection.zip?dl=0下面是我真正需要的动画:https://www.dropbox.com/s/yo35lsm7yrc2oqu/Screen%20Recording.mo

ios - 如何通过 CollectionView 中的 Flow Layout 将单元格对齐到顶部

在这段代码中,我试图更改UICollectionView的第一个单元格和其他具有相同大小的单元格的大小,但是在第一行中只有一个单元格出现,而我想要两个出现:funccollectionView(_collectionView:UICollectionView,layoutcollectionViewLayout:ifindexPath.row==0{returnCGSize(width:collectionView.frame.width/1.5-2,height:collectionView.frame.width/1.5-2)}else{returnCGSize(width:col

ios - header 未显示在 UICollectionView 中,甚至已经在 UICollectionViewFlowLayout 中以编程方式注册

即使我已经在UICollectionViewFlowLayout中以编程方式注册,我的标题似乎也没有显示。只是空白。我的代码overridefuncviewDidLoad(){super.viewDidLoad()UICollectionReusableViewletlayout:UICollectionViewFlowLayout=UICollectionViewFlowLayout()layout.sectionInset=UIEdgeInsets(top:0,left:0,bottom:0,right:0)layout.itemSize=CGSize(width:117,heig

ios - UICollectionView 使用 UICollectionViewFlowLayout 删除分节符

我有一个分为多个部分的数据集,但是,我想在一个collectionView中显示它,而不在部分之间打断。这是我想要实现的目标的示例:Insteadof:0-00-10-20-31-01-12-03-0Iwant:0-00-10-20-31-01-12-03-0我意识到解决方案可能在于自定义UICollectionViewLayout子类,但我不确定如何实现这样的目标。谢谢 最佳答案 您是正确的,您需要子类化UICollectionViewLayout。在开始之前要了解的本质是您需要至少计算CollectionView中每个单元格的位

ios - 带有 invalidateSupplementaryElements 和 UICollectionViewLayoutInvalidationContext 的 invalidateLayout

我正在尝试刷新页脚(supplementaryElement)。我正在使用invalidatelayout方法。基于SO建议here.Apple文档here.我收到以下错误:Terminatingappduetouncaughtexception'NSInvalidArgumentException',reason:'theinvalidationcontext()sentto-[UICollectionViewFlowLayoutinvalidateLayoutWithContext:]isnotaninstanceoftypeUICollectionViewFlowLayoutIn

ios - 使用我自己的 UICollectionViewFlowLayout 子类滚动时,UICollectionView 项目消失

上下文:我正在使用UICollectionView进行照片查看。每张图片都是一个包含一个UIImage的单元格。图片可以有不同的大小,我希望它们能填满整个屏幕。所以我编写了一个类来确定每个UICollectionCell的框架,并让UICollectionViewFlowLayout的子类向该类请求每个项目的正确框架。我对UICollectionViewFlowLayoutClass的实现:overridefunclayoutAttributesForElementsInRect(rect:CGRect)->[AnyObject]?{letattributesToReturn=supe

iphone - 对齐 UICollectionView 的最后一行

据我所知,UICollectionViewFlowLayout对齐除最后一行之外的部分的所有行。因此,例如,如果没有足够的项目来填充超过1行,则结果是不合理的。配置UICollectionViewFlowLayout或子类化的最简单方法是什么,以便它也对齐一个部分的最后一行? 最佳答案 不幸的是,这实际上是不可能的。不幸的是,它并不是那样设计的。不过,我能想到的一件事可能会起作用,那就是在数据源中添加一个额外的项目,在最后返回,它有一个0像素高的单元格和CollectionView的宽度。这将强制最后一行成为只有该项目的单行,然后它

iphone - 对齐 UICollectionView 的最后一行

据我所知,UICollectionViewFlowLayout对齐除最后一行之外的部分的所有行。因此,例如,如果没有足够的项目来填充超过1行,则结果是不合理的。配置UICollectionViewFlowLayout或子类化的最简单方法是什么,以便它也对齐一个部分的最后一行? 最佳答案 不幸的是,这实际上是不可能的。不幸的是,它并不是那样设计的。不过,我能想到的一件事可能会起作用,那就是在数据源中添加一个额外的项目,在最后返回,它有一个0像素高的单元格和CollectionView的宽度。这将强制最后一行成为只有该项目的单行,然后它

ios - 在 UICollectionViewFlowLayout 滚动设置为水平的情况下在顶部显示节标题

这是thisquestion的副本.我再次提问是因为已接受的答案不起作用,而且没有人提供更多关于假定的正确答案如何起作用的解释。情况是这样的:我想将CollectionView显示为一行。为此,我将自定义UICollectionViewFlowLayout应用于CollectionView并将滚动设置为水平。一切正常,除了部分标题消失了。为了解决这个问题,我实现了这个功能:-(CGSize)collectionView:(UICollectionView*)collectionViewlayout:(UICollectionViewLayout*)collectionViewLayou