作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
隐含地表现良好。但是,当我尝试使用显式动画在单个图层上进行多个动画(例如不透明度和翻译)时,我得到的结果很奇怪。
首先,我尝试使用CATransaction。然后我切换到CAAnimationGroup。两者似乎都没有得到我想要的。
我想要什么?
我想要的只是将一层从一个点移动到另一个具有初始不透明度和目标不透明度的点。而已!
我在看什么?
这是一个例子
执行事务开始/提交时,翻译似乎正确,但不透明性不正确。我的初始不透明度为0,目标不透明度为0.5。
但是,当我运行动画时,它会混合到0.5,然后“快照”到1.0(完全不透明)。
我尝试将removeOnCompletion设置为NO。但这也没有帮助。
我认为最重要的是,我需要了解AnimationGroup和Transaction之间的区别。
有人能解释一下吗?关于动画的奇特之处,我可能会看到什么?
谢谢!
最佳答案
好的,没有动画为我工作。
我尝试为(图层)的不透明度创建基本动画。我将其放置在动画组中。当我执行时,什么也没发生。为简单起见,我取出了翻译动画。这只是尝试做不透明度动画。
CAAnimationGroup *group = [CAAnimationGroup animation];
CABasicAnimation *opacityAnimation;
opacityAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
opacityAnimation.fromValue = [NSNumber numberWithDouble:fromalpha];
opacityAnimation.toValue = [NSNumber numberWithDouble:toalpha];
opacityAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
opacityAnimation.delegate = self;
opacityAnimation.duration = 2.7;
opacityAnimation.removedOnCompletion = NO;
group.animations = [NSArray arrayWithObjects: opacityAnimation, nil];
[baseLayer addAnimation:group forKey:@"groupAnim"];
关于core-animation - CALayer显式动画的行为异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1339132/
我是一名优秀的程序员,十分优秀!