gpt4 book ai didi

iphone - CABasicAnimation 在动画完成后不更改其位置属性

转载 作者:可可西里 更新时间:2023-11-01 03:35:55 25 4
gpt4 key购买 nike

我正在为图层的位置属性应用 CABasicAnimation,它的动画效果很好,但是在动画完成后它会返回到原始位置,如何避免这种情况并使图像仅停留在动画位置?

最佳答案

有几种不同的方法可以解决这个问题。我最喜欢的是在动画结束时设置对象,并使用 fromValue 而不是 toValue 来创建动画。您还可以同时设置 fromValue 和 toValue 来创建此效果。即

CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];
animation.duration = 1.0;
animation.fromValue = [NSValue valueWithCGPoint:startPoint];
animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];

viewToAnimate.center = endPoint;
[viewToAnimate.layer addAnimation:animation forKey:@"slide"];

另一种方法是将自己设置为委托(delegate)并实现:

-(void)animationDidStop:(id)sender finished:(BOOL)finished {
viewToAnimate.center = endPoint;
}

关于iphone - CABasicAnimation 在动画完成后不更改其位置属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2559812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com