在两页模式下如何实现可缩放的 UIPageViewController?

Posted

技术标签:

【中文标题】在两页模式下如何实现可缩放的 UIPageViewController?【英文标题】:How to implement a zoomable UIPageViewController when in Two Pages mode? 【发布时间】:2012-01-29 10:42:41 【问题描述】:

当处于两页布局模式时(换句话说,当 Spine Location 设置为 Mid 时),我需要在 ios 5 中实现一个可缩放的 UIPageViewController。

当只显示一个页面时,为每个页面使用滚动视图可以正常工作。但是当两个页面以横向模式并排显示时,如何在缩放动画期间无缝同步页面并对齐边框?

一种可能的解决方案是将 UIPageViewController 放在更大的 UIScrollView 控制器中,但这会导致图像模糊,因为当父级缩放时,页面内的两个滚动视图不会更新为源图像的更高分辨率区域。

在两页模式下,似乎不可能在 UIPageViewController 内进行缩放。有没有人找到解决这个问题的方法?

提前致谢。

【问题讨论】:

【参考方案1】:

我仍在测试,但我有这个。 我使用了 pageviewcontroller 模板。 我更改了场景以显示图像而不是一个月(在 UIImageView 内)。

使用 UIPinchGestureRecognizer 来缩放图像,使用 UIPanGestureRecognizer 来移动图像,一旦它被缩放并且可以工作。

唯一的问题是有时会识别页面滑动而不是平移,因此它会更改页面而不是移动内部图像。 而且它一次只缩放一个页面,我在 dataViewController 的视图中标记了剪辑子视图,因此即使放大另一个页面,两个页面的大小也保持不变。

【讨论】:

以上是关于在两页模式下如何实现可缩放的 UIPageViewController?的主要内容,如果未能解决你的问题,请参考以下文章

如何从Python列表中绘制可缩放的Cantor集?

如何制作可缩放的线性布局? [关闭]

如何使用 UIScrollView 和 CATiledLayer 在可缩放的 UIView 上绘制标记

可缩放的 JScrollPane - setViewPosition 无法更新

在可缩放的滚动视图中禁用图像视图缩放

如何在 xamarin 表单中进行可单击和可缩放的网格 (10000 x 10000)