问题标签 [uicollectionviewcompositionallayout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - UICollectionViewCompositionalLayout 标头未对齐
我创建了一个自定义布局,基于UICollectionViewCompositionalLayout
该布局在面板或卡片中显示每个部分的项目......
...这里的蓝色区域是NSCollectionLayoutDecorationItem
通过其decorationItems
属性传递给该部分的。这个背景项目有它自己的内容插图,它从集合视图边界(灰色区域)插入,并且该部分有它自己的内容插图,可以在面板中插入它。紫色部分是 3 个全宽项目(单元格)。
这一切都按预期工作。
但是,当我尝试使用 为每个部分添加标题时boundarySupplementaryItems
,标题(红色)似乎忽略了该部分的内容插入,但该部分确实调整了自身的大小,就好像它定位正确......
...标题将自身固定在部分的顶部,但部分高度会增加标题 + 插图的高度。
这是我用来生成布局的代码...
谁能建议我如何让标题正确定位 - 就在该部分的第一项上方,并尊重已设置的内容插图?
swift - 使用情节提要将集合视图布局设置为组合布局
我如何能够将集合视图流布局从情节提要更改为组合布局。所以我有一个 TabBarController 类,其中包含我从情节提要中初始化的 3 个导航控制器,如下所示。
这就是我将控制器添加到标签栏控制器的方式。
如果我尝试使用注释行添加我的 SearchCollectionVC,我的应用程序将崩溃。它在 SearchCollectionVC 所需的 init 中执行 fatalError() 行。这就是我创建布局的方式。
现在我尝试在 SearchCollectionVC viewDidLoad() 中执行此操作。
这适用于注释行而没有 init。问题是当我旋转屏幕时会发生这种情况。
当我使用 SearchCollectionVC() 添加控制器和使用 init 时,不会发生这种情况。现在,我不知道为什么会这样。有人可以告诉我如何能够初始化故事板控制器并将布局更改为我创建的组合布局,而不会将集合视图切成两半。谢谢
ios - 集合视图组合布局 - 动态布局
在看到Collection View Layout Session 中精彩的 Advances之后,我想知道是否可以使用新Collection View Compositional Layouts
框架中实现的功能来创建基于以前未知的单元格大小的布局。
我的问题:
想象一个有两个级别的水平图片库,照片可以是“垂直”或“水平”,应用程序在需要显示时获取它们,并且它们是随机提供的(“水平”或“垂直”)。所以我们必须用“随机模式”填充画廊(Pinterest 风格,这里是如何做到这一点UICollectionViewFlowLayout
)。
我看不到填充单元格的“组”模式,因为布局有无限的可能性,垂直划分可以出现创建组,但也不能。
可以存档Collection View Compositional Layouts
吗?
谢谢你。
ios - UICompositionalLayout 未按预期工作(垂直表格滚动 + 水平分页)
我一直在挖掘 iOS 13 中引入的“新”组合布局 api,希望找到一个解决方案来解决UITableView
在UICollectionViewCell
. 我过去曾使用过这种令人头疼的解决方案,以便同时提供水平页面滚动和垂直表格滚动。这是一种非常繁琐的做事方式,自从CompositionalLayout
宣布以来,我一直渴望尝试重构它。
到目前为止,没有运气。我可以使水平滚动和垂直滚动工作,但无法超越每行以独立方式水平滚动的“App Store”行为。有没有人有运气实施类似的解决方案?
这是我的代码CollectionViewLayout
:
这会产生两个项目的垂直滚动和显示后续页面中剩余项目的水平滚动,但每页只有两个。我的目标是让“页面”除以一年中的天数,每个页面应该有 X 个垂直滚动的项目。
谢谢
swift - UICollectionView 在 UICollectionViewCompositionalLayout 上自动滚动
UICollectionViewCompositionalLayout
与水平和垂直滚动一起使用时,
我如何UISCrollView
从UICollectionView
setContentOffset
通过计时器自动滚动给定部分 ( )
例如。所以只有一个部分会自动滚动,而不是整个 collectionView
swift - 带有 pinToVisibleBounds 的 UICollectionView 组合布局标头奇怪地被单元格遮挡
我正在使用 UICollectionView 组合布局并希望有一个贴在顶部的标题
这应该是可能的
但是,在滚动过程中,标题被奇怪地遮住了,看起来像一个错误......而且看起来只有在可见屏幕之外的单元格,当重新加载时,遮住了标题
您可以在此视频中看到它 https://www.dropbox.com/s/n5myzfceuiwzb39/stackoverflow-unsatable-header.mov?dl=0
这就是整个布局的构建方式
解决方法是什么?或者有什么其他方法可以有一个“浮动”标题?
注1:
看起来当标题附加到configuration.boundarySupplementaryItems
它时,它的行为符合预期......通过这可能是当前情况的解决方案,它不能解决部分的整体问题......(您还必须将 zIndex 设置为非常高数字)
swift - 具有组合布局的集合视图不适用于标题视图
尝试UICollectionView
使用compositionalLayout
. 它适用于集合视图单元格,但是当我尝试添加标题时,它会因注册笔尖错误而崩溃:
由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“无法使类型视图出列:SectionHeaderElementKind 标识符为 headerView - 必须为标识符注册一个 nib 或类或连接情节提要中的原型单元格”
视图控制器的代码实现:
我创建的标题视图:
如果我在这里遗漏了什么,请帮忙。