我不认为UIKit
动画为您提供了直接关键帧动画以获得振荡效果。我们可以通过触发一个接一个的动画来尝试使用代表实现它,但效率不如CAKeyframeAnimation
。要使用此功能,您必须在项目中包含QuartzCore
框架,并且需要包含#import <QuartzCore/QuartzCore.h>
。你可以做这样的事情实现自己的振荡效应,
self.mover.center = CGPointMake(160, 240);
CAKeyframeAnimation *animation;
animation = [CAKeyframeAnimation animationWithKeyPath:@"position.x"];
animation.duration = 3.0f;
animation.repeatCount = 10;
animation.values = [NSArray arrayWithObjects:
[NSNumber numberWithFloat:160.0f],
[NSNumber numberWithFloat:320.0f],
[NSNumber numberWithFloat:160.0f],
[NSNumber numberWithFloat:0.0f],
[NSNumber numberWithFloat:160.0f], nil];
animation.keyTimes = [NSArray arrayWithObjects:
[NSNumber numberWithFloat:0.0],
[NSNumber numberWithFloat:0.25],
[NSNumber numberWithFloat:.5],
[NSNumber numberWithFloat:.75],
[NSNumber numberWithFloat:1.0], nil];
animation.removedOnCompletion = NO;
[self.mover.layer addAnimation:animation forKey:nil];
的这段代码振荡视图从左到右相当接近你的描述,虽然得到你想要的,你可能要改变了一点确切的疗效。
这只是一个例子来实现,我并没有把100 X位置居然和好这个答案是没有帮助的,因为我要搬家了它左和右。你只是解释了我已经完成的一个方面的动作:( – Wasim
@Wasim你的问题没有提到,根本没有动画,所以我误解了你的要求,更新了我的答案 –
@Deepak谢谢你的回复:)但你仍然误解了我的问题:)我说,我完成了一半的动画,这意味着我能够从中心向右或向左动画我的UIViewImage。但我的主要动机是从屏幕中心开始动画并将其首先移动到最左侧然后最右侧。我希望我的问题现在对你更加清楚:)对不起再次打扰你再次:) – Wasim