我该如何构建这个视图呢?

Ada*_*orr 3 uitableview ios uipageviewcontroller

我很难找到构建这种设计的最佳方法.

顶视图具有最小高度,并在达到此高度时变粘.底部视图托管一个具有三个视图的分页控制器.这些视图中的每一个都承载具有垂直滚动的集合视图或表视图.

我真的不知道如何处理这个问题.整个视图是否可滚动,我应该阻止在第二个视图上滚动,直到顶视图达到它的粘性高度?或者这些视图中的每一个都是单独的uitableviews,而寻呼控制器只是一个单元格?我是否应该使用分页控制器,还是应该使用启用分页的scrollview?(后者有点粗糙的互动方式)

谢谢!

在此输入图像描述

Fog*_*ter 5

看看在使用集合视图高级用户界面从今年WWDC.此视图与iTunes Connect应用程序界面非常相似.整个会话视频解释了他们如何创建该界面.

我使用了类似的方法在Emojicate应用程序中创建键盘.

在此输入图像描述

我认为我所做的实际上是假的粘性标题.所以像这样......

  1. 仅使用一个集合视图.
  2. 创建包含三个数据源的"分段数据源".(参见WWDC关于此的视频)
  3. 更改分段控件后,通过更改其布局和(如果需要)更新集合视图dataSource.
  4. 使整个顶部部分成为集合视图上的标题.
  5. 当收集视图滚动过去的某个点(当你想粘头),那么有第二个是压缩的头,使其在屏幕的顶部可见视图.这根本没有附加到集合视图.

当分段控件更改时,您可以通过更改"选定数据源"来更新集合视图.数据源还可以包含UICollectionViewLayout将更新它的数据源.

基本上,您正在谈论的tableview只是一个集合视图,其中单元格宽度等于屏幕宽度.即伪造一张桌子.

粘性标题根本不粘.当它开始离开屏幕时,你可以在那里放一个假的标题.

它需要一个重复的(ish)视图,并考虑如何构建数据,但我认为这比拥有多个集合视图和页面控制器和东西更容易,资源更少.

如果您希望我更详细地了解它,请告诉我,但这是一个复杂的主题.先观看视频.