我想加入UICollectionView到ViewController了,我需要有"每行" 3个细胞无细胞之间的空格(它应该看起来像一个网格).单元格宽度应该是屏幕尺寸的三分之一,所以我认为layout.item宽度应该相同.但后来我明白了:

如果我减小那个尺寸(例如7或8像素),那就更好了,但是行中的第三个单元格不是完全可见的,我仍然有那个空白区域(顶部和底部,左侧和右侧).

class ViewController: UIViewController, UICollectionViewDelegateFlowLayout, UICollectionViewDataSource {
var collectionView: UICollectionView?
var screenSize: CGRect!
var screenWidth: CGFloat!
var screenHeight: CGFloat!
override func viewDidLoad() {
super.viewDidLoad()
screenSize = UIScreen.mainScreen().bounds
screenWidth = screenSize.width
screenHeight = screenSize.height
// Do any additional setup after loading the view, typically from a nib
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 20, left: 0, bottom: 10, right: 0)
layout.itemSize = CGSize(width: screenWidth / 3, height: …Run Code Online (Sandbox Code Playgroud) uicollectionview uicollectionviewcell uicollectionviewlayout swift
我有UICollectionView水平滚动,并且每个屏幕总共有2个单元格并排.我需要滚动才能在单元格的开头停止.启用分页后,集合视图会滚动整个页面,一次是2个单元格,然后停止.
我需要启用单个单元格的滚动,或者在单元格的边缘停止滚动多个单元格.
我试图子类化UICollectionViewFlowLayout并实现该方法targetContentOffsetForProposedContentOffset,但到目前为止我只能破坏我的集合视图并停止滚动.有没有更简单的方法来实现这个以及如何,或者我真的需要实现UICollectionViewFlowLayout子类的所有方法?谢谢.
我在我的项目中使用UICollectionView,其中一行中有多个不同宽度的单元格.根据:https: //developer.apple.com/library/content/documentation/WindowsViews/Conceptual/CollectionViewPGforIOS/UsingtheFlowLayout/UsingtheFlowLayout.html
它使用相同的填充将细胞扩散到整个线上.这种情况按预期发生,除了我想左对齐它们,并硬编码填充宽度.
我想我需要继承UICollectionViewFlowLayout,但是在线阅读了一些教程等之后,我似乎并不知道这是如何工作的.
在iOS 10的设备上运行我的应用程序我收到此错误:
UICollectionView接收具有不存在的索引路径的单元格的布局属性
在iOS 8和9中工作正常.我一直在研究,我发现这与集合视图布局无效有关.我试图实施该解决方案但没有成功,所以我想请求直接帮助.这是我的层次结构视图:
->Table view
->Each cell of table is a custom collection view [GitHub Repo][1]
->Each item of collection view has another collection view
Run Code Online (Sandbox Code Playgroud)
我试过的是插入
[self.collectionView.collectionViewLayout invalidateLayout];
Run Code Online (Sandbox Code Playgroud)
在里面
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
Run Code Online (Sandbox Code Playgroud)
两个集合视图.
我也尝试在重新加载数据之前使布局无效,不起作用......
有人能给我一些指示吗?
我正在使用UICollectionView流程布局.我也为此做了一个习惯UICollectionViewCell.但是在运行项目时,控制台继续抛出这个错误 -
UICollectionView未定义的行为是因为:项目高度必须小于UICollectionViewCell减去该部分高度的顶部和底部值.
我确保细胞的大小是正确的
有没有人能够解决这个问题.提前致谢.
关心Nitesh
我有一个UIScrollView图标网格.如果你想象一下iOS Springboard的布局,你就会非常接近正确.它有一个水平的分页滚动(就像Springboard一样).但是,看起来布局并不完全正确.好像是从上到下布置物品.因此,由于要显示的项目数,我的最后一列只有2行.我宁愿让最后一页上的最后一行有2个项目,就像你在Springboard中看到的那样.
如何通过UICollectionView及其相关课程来实现这一目标?我必须写一个自定义UICollectionViewFlowLayout?

1)如何实现如图所示UICollectionView?
2)我尝试了-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath方法并传递了不同的大小,但它在单元格之间留下了空间.我可以清空这些空间吗?我希望每个细胞都有不同的高度和宽度
当前输出:
.
objective-c ios uicollectionview uicollectionviewcell uicollectionviewlayout
这是一个非常直截了当的问题,但是我无法在SO上找到明确的答案(如果我错过了,请纠正我).
基本上,我的问题是:是否可以UICollectionView从右到左而不是从左到右对齐行内容?
在我的研究中,我看到了建议子类化的答案UICollectionViewFlowLayout,但我还没有找到一个为右对齐创建一个例子的例子.
我的目标是设置2个集合视图,如下所示:

任何帮助是极大的赞赏!
objective-c right-to-left ios uicollectionview uicollectionviewlayout
我有一个带有自定义UICollectionViewFlowLayout的UICollectionView.它水平滚动,一次只显示一个项目(全高).我有pagingEnabled = YES所以它坚持页面.
UICollectionView显示特定日期内的照片.我最初有按钮来改变当天+/- 1天,但我认为如果用户可以通过第一张或最后一张图像(超过预定阈值)拉动收集视图以改变那一天,那将是整洁的.我使用UIScrollView委托方法实现了它,如果集合视图中有2个或更多项,它的效果很好......
这很难描述,但如果只有一个项目,则不允许我将项目拉过它的界限.IE没有反弹.
我想有这种行为,但我需要先解决这个问题.我想如果我删除了pagingEnabled = YES并使用了targetContentOffsetForProposedContentOffset:proposedContentOffset:withScrollingVelocity,那我可以让它工作但我真的很喜欢分页启用的快速行为.(它们是相互排斥的).
有什么想法吗?
iphone uiscrollviewdelegate ios uicollectionview uicollectionviewlayout
我一直得到'无法同时满足约束'的例外(Xcode 5,iOS 7,设备和模拟器),其中列表中的一个约束是这样的:
"<NSLayoutConstraint:0x165b23d0 'UIView-Encapsulated-Layout-Width'
H:[StoryPlayerCell:0x165affc0(0)]>"
Run Code Online (Sandbox Code Playgroud)
我自己没有设置这个约束.它也不是NSAutoresizingMaskLayoutConstraint.但是它来自哪里?我怎么能摆脱它呢?
我不知道.我'UIView-Encapsulated-Layout-Width'在Apple的文档中找不到任何相关内容.即便是谷歌搜索也没有任何回报.
有什么建议?
PS:我在UICollectionView一个自定义子类中使用这个单元格UICollectionViewFlowLayout.也许这'Encapsulated-Layout'部分与此有关?
ios autolayout uicollectionview nslayoutconstraint uicollectionviewlayout
uicollectionview ×10
ios ×9
objective-c ×4
autolayout ×1
ios10 ×1
iphone ×1
layout ×1
swift ×1