В настоящее время у меня есть изображение облаков размером 2048x435, которое прокручивается через ориентированный на ландшафт ориентированный UIImageView 1024x435 с использованием CABasicAnimation. Изображение облака прокручивается так, как должно, однако у меня возникают некоторые проблемы с попыткой получить дублирующее изображение облаков, чтобы подключиться к задней части текущего изображения облаков, чтобы между изображениями облаков не было никакого промежутка. Я изо всех сил пытаюсь найти один день, пытаясь найти решение, поэтому любая помощь будет очень признательна. Мой текущий код:
развивающийся на Xcode 4.2 для iOS 5 с ориентированной на ARC ориентацией без использования раскладки Ipad.
-(void)cloudScroll
{
UIImage *cloudsImage = [UIImage imageNamed:@"TitleClouds.png"];
CALayer *cloud = [CALayer layer];
cloud.contents = (id)cloudsImage.CGImage;
cloud.bounds = CGRectMake(0, 0, cloudsImage.size.width, cloudsImage.size.height);
cloud.position = CGPointMake(self.view.bounds.size.width / 2, cloudsImage.size.height / 2);
[cloudsImageView.layer addSublayer:cloud];
CGPoint startPt = CGPointMake(self.view.bounds.size.width + cloud.bounds.size.width / 2, cloud.position.y);
CGPoint endPt = CGPointMake(cloud.bounds.size.width / -2, cloud.position.y);
CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"position"];
anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear];
anim.fromValue = [NSValue valueWithCGPoint:startPt];
anim.toValue = [NSValue valueWithCGPoint:endPt];
anim.repeatCount = HUGE_VALF;
anim.duration = 60.0;
[cloud addAnimation:anim forKey:@"position"];
}
-(void)viewDidLoad
{
[self cloudScroll];
[super viewDidLoad];
}