我可以像这样在屏幕上制作动画:
aView.frame = CGRectMake(100,100,50,50);
[UIView animateWithDuration:25.0 delay:0.0 options:UIViewAnimationCurveLinear animations:
^{
aView.frame = CGRectMake(200,100,50,50);
}
completion:^(BOOL finished)
{
aView.hidden = YES;
}
];
..但如何在动画制作时获取项目的位置?如果我在屏幕上放置一个按钮并使用此操作
-(IBAction)buttonTapped:(id)sender
{
NSLog(@"x pos:%f", aframe.origin.x)l
}
然后我从中得到的是
x pos:200.00
..这是项目的最终位置,但不是当前位置。我如何获得最新信息?
答案 0 :(得分:1)
查看CALayer
的{{3}}财产。它保存动画图层的当前值。
您必须导入 QuartzCore 框架。
修改强>
具体做法是:
#import <QuartzCore/CALayer.h>
// ...
CGPoint inMotionPosition = myView.layer.presentationLayer.position;