如何使用setAnimationStartDate? 以下代码不起作用。
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:3.0];
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:3];
[UIView setAnimationStartDate:date];
CGPoint point = _imageView.center;
point.y += 150;
[_imageView setCenter:point];
[UIView commitAnimations];
答案 0 :(得分:1)
您可以使用基于块的动画。它们更清洁,可以完全满足您的需求。要查看的一种方法是+[UIView animateWithDuration:delay:options:animations: completion:]
。 delay
参数在您的情况下非常有用。这是一个例子。
[UIView animateWithDuration:10
delay:3
options:UIViewAnimationOptionCurveEaseIn
animations: ^{
CGPoint point = _imageView.center;
point.y += 150;
[_imageView setCenter:point];
}
completion: ^(BOOL finished) {
NSLog(@"Animation Complete");
}];
您可能不得不使用delay
来模仿您的NSDate
设置。