ios – 动画后我的CALayer变换保持不变,但视角消失了
发布时间:2020-12-14 19:39:53 所属栏目:百科 来源:网络整理
导读:我有以下代码在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; CABasicAnimati
我有以下代码在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; 您可以立即执行此操作,因为动画将隐藏它直到动画完成. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |