2011-04-25 121 views
4

我正在实施一个相当标准的UIView动画,使用UIViewAnimationTransitionCurlUp。基本的想法是,我在屏幕上有一个文件夹覆盖了一堆页面,当我从一个页面改变到另一个页面时,我使用卷曲动画。每个页面都是占用屏幕70%左右的子视图,以便剪贴板在后台仍可见。UIViewAnimationTransitionCurlUp具有透明背景

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

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

enter image description here

回答

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]; 

enter image description here