ios – 动画后我的CALayer变换保持不变,但视角消失了

ios – 动画后我的CALayer变换保持不变,但视角消失了,第1张

概述我有以下代码在Y轴上将CALayer旋转-45度: #define D2R(x) (x * (M_PI/180.0))- (void) swipe:(UISwipeGestureRecognizer *)recognizer{ CATransform3D transform = CATransform3DMakeRotation(D2R(-45), 0, 1.0, 0 我有以下代码在Y轴上将CALayer旋转-45度:

#define D2R(x) (x * (M_PI/180.0))- (voID) swipe:(UISwipeGestureRecognizer *)recognizer{            CAtransform3D transform = CAtransform3DMakeRotation(D2R(-45),1.0,0);    transform.m34 = -1.0 / 850;    CABasicAnimation *transformAnimation = [CABasicAnimation animationWithKeyPath: @"transform"];    transformAnimation.fillMode = kCAFillModeForwards;    transformAnimation.removedOnCompletion = NO;    transformAnimation.tovalue = [NSValue valueWithCAtransform3D:transform];    transformAnimation.duration = 0.5;    [self.layer addAnimation:transformAnimation forKey:@"transform"];}

动画是有效的,除了它没有透视结束 – 如果我正确理解事物,则忽略我的m34设置.

中途:

在末尾:

我究竟做错了什么?

解决方法 动画仅影响动画期间视图的外观.动画结束后,它不会应用于视图.你需要自己做.在添加动画后,我正在猜这样的东西:

self.layer.transform = transform;

您可以立即执行此 *** 作,因为动画将隐藏它直到动画完成.

总结

以上是内存溢出为你收集整理的ios – 动画后我的CALayer变换保持不变,但视角消失了全部内容,希望文章能够帮你解决ios – 动画后我的CALayer变换保持不变,但视角消失了所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1055001.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存