我正在尝试创建一种“翻转”动画,将UIView绕每个轴旋转180度,然而,我很难获得想要的效果。这是我到目前为止所得到的:
[UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
CATransform3D tX= CATransform3DIdentity;
tX.m34 = 1.0 / -500;
CATransform3D tY= CATransform3DIdentity;
tY.m34 = 1.0 / -500;
CATransform3D tZ= CATransform3DIdentity;
tZ.m34 = 1.0 / -500;
tX = CATransform3DRotate(tX, M_PI, 1.0f, 0.0f, 0.0f);
tY = CATransform3DRotate(tY, M_PI, 0.0f, 1.0f, 0.0f);
tZ = CATransform3DRotate(tZ, M_PI, 0.0f, 0.0f, 1.0f);
self.flipView.layer.transform = CATransform3DConcat(tX, CATransform3DConcat(tY, tZ));
}然而,这似乎不会执行任何动画,就像它们相互抵消一样。这看起来应该是一个非常简单的任务,但我似乎不能想出如何组合这三个动画条件。非常感谢您的帮助!谢谢
发布于 2013-03-24 05:47:17
围绕三个轴中的每一个旋转半周(180°或π弧度),总体上不会产生任何变化(三个旋转变换的串联会导致恒等变换)。
试着只绕一个轴旋转,看看它做了什么。
https://stackoverflow.com/questions/15591827
复制相似问题