【问题标题】:How can I reduce the size of iOS view Paging range?如何减小 iOS 视图分页范围的大小?
【发布时间】:2018-09-11 17:04:36
【问题描述】:

最近做了一个项目,需要用到UIPageViewController。

首先,我制作了一个 UIPageVC 和两个普通的 UIVC。(VC1,VC2)

所以两个普通的 VC 都是由 UIPageVC 控制的。

然后,我成功完成了垂直视图分页(不是卷曲模式,只是滚动模式)

如果我向下滑动,我可以看到视图从 VC1 更改为 VC2,反之亦然

嗯,我想做的就是这个。

1我将VC1的大小设置为小,这样就可以看到VC2的一部分了。

[2] 如果我向下(或向上?)滑动,将当前视图更改为整个 VC2

[3] 滑动返回,1 状态返回

下图可以帮助你理解我的解释。

我怎样才能做到这一点?

有什么办法可以控制 Storyboard 或代码吗?

请告诉我:)

【问题讨论】:

  • 我认为你想要一个垂直页面控件而不是标准的水平页面控件只需google一下,这个问题已经解决了:stackoverflow.com/questions/4927974/…
  • 感谢您的回复。对不起,我已经成功地尝试了垂直分页。我的问题的主要焦点是如果总是可以看到顶部的 VC2
  • 我尝试向上或向下滑动
  • 这个控件会做你想做的,下载例子试试看:github.com/shkutkov/SMVerticalSegmentedControl
  • 感谢您的好意,但是 swift 还有其他方法吗?不客观 c

标签: ios uipageviewcontroller


【解决方案1】:

您可以使用普通的UIScrollView 而不是UIPageViewController 相当轻松地做到这一点。

  • FirstVC 视图添加到滚动视图中
  • 将其顶部、前导和尾随约束到滚动视图
  • 将其宽度限制为滚动视图的宽度
  • 将其高度限制为滚动视图的高度减去您希望可见的 VC2 数量

然后

  • SecondVC 视图添加到滚动视图中
  • 将其顶部限制在 FirstVC 视图的底部
  • 将其前导和尾随约束到滚动视图
  • 将其宽度限制为滚动视图的宽度
  • 将其高度限制为滚动视图的完整高度
  • 将其底部限制在滚动视图的底部

并在滚动视图上启用分页。

可以在 IB / Storyboard 中完成所有这些操作,但处理大型滚动内容可能很麻烦。由于您已经在单独的视图控制器中拥有这两个部分(如果我正确理解了您的描述),因此在代码中设置约束更容易。

我在https://github.com/DonMag/YetAnotherScrollExample 上发布了一个完整的工作示例

【讨论】:

  • 哇太棒了!这正是我想要的!!!非常感谢 DonMag :) 你的好意给我留下了深刻的印象。特别是,让自己的项目和发布!你的建议帮了大忙。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-29
  • 2012-03-26
  • 1970-01-01
  • 2010-10-10
  • 2018-04-29
  • 1970-01-01
相关资源
最近更新 更多