iOS中无休止的重复滚动/动画背景?
Posted
技术标签:
【中文标题】iOS中无休止的重复滚动/动画背景?【英文标题】:Endless repeating scrolling/animated background in iOS? 【发布时间】:2012-08-18 01:07:22 【问题描述】:我一直在为 2 个在 iPhone 视图上无限水平滚动的图像设置动画。背景不能有任何空隙。如果这可以只用 1 张图片来完成,那就太好了,但我似乎无法理解。这是我到目前为止的代码:
-(void)moveImages
CABasicAnimation *theAnimation;
theAnimation=[CABasicAnimation animationWithKeyPath:@"transform.translation.x"];
theAnimation.duration=10;
theAnimation.repeatCount=100;
theAnimation.autoreverses=NO;
theAnimation.fromValue=[NSNumber numberWithFloat:320];
theAnimation.toValue=[NSNumber numberWithFloat:-320];
[theImage.layer addAnimation:theAnimation forKey:@"animateLayer"];
CABasicAnimation *theAnimation2;
theAnimation2=[CABasicAnimation animationWithKeyPath:@"transform.translation.x"];
theAnimation2.duration=10;
theAnimation2.repeatCount=100;
theAnimation2.autoreverses=NO;
theAnimation2.fromValue=[NSNumber numberWithFloat:640];
theAnimation2.toValue=[NSNumber numberWithFloat:-640];
[theImage2.layer addAnimation:theAnimation2 forKey:@"animateLayer2"];
【问题讨论】:
【参考方案1】:嗯,在代码中,您可以创建一个由这两者组合而成的新图像。此合成图像宽 960 像素,将第一张图像复制到最右边和最左边的位置。中间位置是第二张图片。
您将图像左移 640 像素,因此您只能看到第一张图像。然后为 640 像素设置动画。当您重新启动动画时,图像总是左移 640 像素。
这样你就有了一个动画。
【讨论】:
以上是关于iOS中无休止的重复滚动/动画背景?的主要内容,如果未能解决你的问题,请参考以下文章
在具有多个部分的 tableView 中滚动时使用平滑动画更改视图背景渐变颜色