当transform.rotation.y>时,UIView的图层旋转不会将背景保持在顶部。 M_PI

时间:2011-07-14 13:30:23

标签: ios uiview core-animation calayer

我正在玩Core Animation,我正在努力解决我的最后一个宠物用例:在y轴上旋转一张卡片。

以下是我的观点设置方式:

- AceView
   |
   └- background-view (filling the frame with a white background)
   |
   └- UILabel and UIImageView views for the UI artifacts

动画内容设置归功于CABasicAnimation类,并应用于AceView的图层。不幸的是,这种行为并不像我预期的那样:

enter image description here

卡片旋转但我想要的是当我们看到视图的“背面”(transform.rotation.y > M_PI)时,我们会看到上面提到的“背景视图”(即上图中,第三步将完全白色)。起初我甚至认为将背景颜色设置为AceView就足够了,不幸的是没有。

我必须明白错过一些东西,你能解释一下我的意思吗?

编辑:我可以使用+ (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion使用转换来匹配我的期望但是,如果有人可以解释为什么在> M_PI我真的会{{1}}时,在Y轴上旋转不会显示白色视图高兴。

1 个答案:

答案 0 :(得分:2)

默认情况下,CALayer会绘制视图的两侧。我会假设你在transitionFromView上看到差异的原因:ToView:是因为你从“fromView”的前面翻到“toView”的前面。