4

我正在实现一个相当标准的UIView动画,使用UIViewAnimationTransitionCurlUp. 基本想法是我在屏幕上有一个文件夹,上面覆盖着一堆页面,当我从一个页面切换到另一个页面时,我使用 curl up 动画。每个页面都是一个占据大约 70% 屏幕的子视图,因此剪贴板在背景中仍然可见。

这个动画一切正常,问题是即使每个“页面”(它是一个单独的UIViewController& UIView)都有一个透明的背景,页面背景在页面卷曲期间变得可见。它只是略微可见,就像 alpha 为 0.1 的黑色背景。但它破坏了效果。

有任何想法吗?这是针对不会在应用商店分发的私有应用程序,因此私有 API 是可以的。

在此处输入图像描述

4

1 回答 1

0

您需要将view页面视图控制器的大小更改为与页面图像的大小完全相同。从您包含的图像中可以看出,您的页面也已旋转。您可以对视图应用旋转以匹配此旋转。下面是我用来实现截图效果的部分代码:

[self addChildViewController:self.pageViewController];
[self.view addSubview:self.pageViewController.view];

CGRect pageViewRect = CGRectMake(0, 0, 300, 586);
self.pageViewController.view.frame = pageViewRect;
self.pageViewController.view.transform = CGAffineTransformMakeRotation(-M_PI/30);

[self.pageViewController didMoveToParentViewController:self];

在此处输入图像描述

于 2013-06-17T22:04:15.513 回答