UIPageViewController支持多个视图和弹性效果

4
我有一个嵌入在ContainerView中的UIPageViewController
这个UIPageViewController有三个视图:第一个是绿色的,第二个是橙色的,第三个是蓝色的。如果我在第一个屏幕上想向左滑动,就会出现弹跳效果。如果我在最后一个屏幕上想向右滑动,也会出现相同的弹跳效果。
这对我来说不是问题,但我想知道如何关闭它?UIPageViewController上没有bounce参数...
另外,如果我在屏幕1(绿色)并尝试很快地向右滑动,我会到达屏幕2(橙色),也会出现弹跳,但我看到的不是屏幕3(蓝色)的开头,而是一点背景(白色)。这种效果不好看。
这里有一个示例项目来展示我的问题:http://d.pr/f/QVXK 简而言之:有没有办法...
  • 完全禁用UIPageViewController的弹跳效果
  • 仅在UIPageViewController的视图之间禁用弹跳,但保留第一个和最后一个视图的弹跳效果?

非常感谢,希望我表述清楚了!

P.S. 我也尝试过 https://github.com/ykyuen/ScrollViewWithPaging,但没有看到同样的情况...是因为他们在数组中一开始就实例化了所有视图,而我的应用程序只在需要时实例化它吗?


直接分享你的问题很好,我会给你一个解决方案,让我检查一下你的代码。 - Anurag Soni
不,这不是因为它们在一个数组中一开始就实例化了。 - Anurag Soni
嗯,好的,谢谢!你有任何想法是发生了什么吗? - Noé Malzieu
1个回答

2

实际上,你提供的代码(在GitHub上)并没有使用UIPageViewController,它只是将UIScrollView表示为页面视图。你可以看到此代码未使用UIPageViewController的dataSource函数。还有一件事我想说的是,你在代码中所做的一切都是合乎逻辑的,其余的事情都取决于需求。如果需要,你可以在项目中使用那段代码。

你所做的只是UIPageViewController的一个特性。UIPageViewController以与你所见相同的方式显示。

如果你想要去除弹跳效果,可以使用UIPageViewControllerTransitionStylePageCurl风格。


对于那些这个答案没有起作用的人,请在其他地方检查,如果它可以工作的话,那些给这个答案投反对票的人,孩子你需要学习新的API。 - Anurag Soni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接