UIView 动画过渡卷曲与透明背景
Posted
技术标签:
【中文标题】UIView 动画过渡卷曲与透明背景【英文标题】:UIViewAnimationTransitionCurlUp with transparent background 【发布时间】:2011-08-12 01:40:36 【问题描述】:我正在使用UIViewAnimationTransitionCurlUp
实现一个相当标准的UIView
动画。基本的想法是我在屏幕上有一个文件夹,上面覆盖着一堆页面,当我从一个页面切换到另一个页面时,我使用 curl up 动画。每个页面都是一个子视图,占据了大约 70% 的屏幕,因此剪贴板在背景中仍然可见。
这个动画一切正常,问题是即使每个“页面”(这是一个单独的UIViewController
和UIView
)都有一个透明的背景,页面背景在页面卷曲期间变得可见。它只是略微可见,就像 alpha 为 0.1 的黑色背景。但它破坏了效果。
有什么想法吗?这是针对不会在应用商店分发的私有应用程序,因此私有 API 是可以的。
【问题讨论】:
【参考方案1】:您需要将页面视图控制器的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];
【讨论】:
以上是关于UIView 动画过渡卷曲与透明背景的主要内容,如果未能解决你的问题,请参考以下文章