Ios 如何使图像在Xcode上重复一个移动周期?

Ios 如何使图像在Xcode上重复一个移动周期?,ios,objective-c,animation,Ios,Objective C,Animation,我有一个从屏幕一端开始的图像,它从左向右移动,我的问题是它不断向右移动,从而失去图像,它永远向右移动。如何使其返回并从左侧重新开始移动?不从右向左移动图像,而是从左再次开始移动 这是我的密码。 方向是风景 -(void)imageMovement { image.center = CGRectMake(image.center.x - 1, image.center.y); } -(void)viewDidLoad { [super viewDidLoad]; [

我有一个从屏幕一端开始的图像,它从左向右移动,我的问题是它不断向右移动,从而失去图像,它永远向右移动。如何使其返回并从左侧重新开始移动?不从右向左移动图像,而是从左再次开始移动

这是我的密码。 方向是风景

-(void)imageMovement {
     image.center = CGRectMake(image.center.x - 1, image.center.y);
}

-(void)viewDidLoad {
     [super viewDidLoad];
     [self imageMovement];
     imageMovementTimer = [NSTimer scheduledWithTimeInterval:0.015 target:nil selector:@selector(imageMovement)userInfo:nil repeat:YES];    
}
这段代码会移动图像,因此如何使其重新启动?我试过使用if语句,比如

if (CGRectIntersectsRect(image.frame, block.frame)) {
    image.center = CGRectMake(image.center.x - 1, image.center.y);
}
那不行。有人能帮我吗?

您可以使用CABASICIATION来完成此操作


你最好使用一个你从[cell.layer addAnimation:shake forKey:@position]哪里得到的单元格;当图像只抖动时,我希望图像恢复。例如,如果我的图像在x=-5处变为,我希望我的图像回到它的起点。这有意义吗?你能澄清你的疑问吗?
    CABasicAnimation*  shake = [CABasicAnimation animationWithKeyPath:@"position"];
    [shake setDuration:0.1];   
    [shake setRepeatCount:10]; // how many times you want to shake image
    [shake setAutoreverses:YES];

    [shake setFromValue:[NSValue valueWithCGPoint:
                         CGPointMake(image.center.x - 1, image.center.y)]];
    [shake setToValue:[NSValue valueWithCGPoint:
                       CGPointMake(image.center.x +200, image.center.y)]];
    [image.layer addAnimation:shake forKey:@"position"];