我搜索了很长时间才知道,在UIPageViewController中我们不能有除了curl和scroll之外的任何其他动画。
我需要使用交叉溶解而不是滚动或卷页,但它不接受除滚动和卷页之外的任何内容。
let vc = IntroPageViewController(transitionStyle: .scroll, navigationOrientation: .horizontal)
self.present(vc, animated: true, completion: nil)
如何使用 .crossDissolve 代替 .scroll 或 .pageCurl。
我在 IntroPageViewController 中尝试过
let nxtVc = pendingViewControllers.first as! IntroSinglePageViewController
nxtVc.modalTransitionStyle = .crossDissolve
UIView.transition(with: self.view, duration:1,
options: UIViewAnimationOptions.transitionCrossDissolve,
animations: { }, completion: nil)
它有效,但现在我有动画、滚动和交叉溶解。 我怎样才能摆脱这里的滚动动画。
我知道这是一篇旧帖子,但我想我会发布我的解决方案。我关注了评论,他们似乎提供使用代表或挂钩滚动视图。
对我来说,“技巧”就像 UIViewControllers 的其他转换一样,是关闭动画,然后立即添加带有所需动画的 UIView.transition。
func transitionPage(_ vc: UIViewController) {
self.pageController.setViewControllers([vc], direction: .forward, animated: false)
UIView.transition(
with: self.view,
duration: 0.6,
options: .transitionCrossDissolve,
animations: { },
completion: nil)
}
我希望这对您和其他遇到此问题的人(像我一样)来说是一个很好的简单解决方案