我有一个用户可以拖动的对象视图和一些启动动画的按钮。触摸按钮时动画开始,但所有对象都回到起始位置..为什么?
NSMutableArray *arrayAntaChiusura1 = [NSMutableArray array];
for(int i = 0; i <= 5; i++)
{
[arrayAntaChiusura1 addObject:[UIImage imageWithContentsOfFile:
[[NSBundle mainBundle]
pathForResource: [NSString stringWithFormat:@"anta_sx%d", 6-i]
ofType:@"png"]]];
}
UIImageView *immagineAntaChiusura1;
immagineAntaChiusura1 = [[UIImageView alloc] initWithFrame:CGRectMake(283, 82, 120, 130)];
immagineAntaChiusura1.animationImages = arrayAntaChiusura1;
immagineAntaChiusura1.animationDuration = tempo_ante;
immagineAntaChiusura1.animationRepeatCount = 1;
[immagineAntaChiusura1 startAnimating];
[self.view addSubview:immagineAntaChiusura1]; // i think this line is the problem
事先感谢你的帮助,我不能自己解决这个问题!
答案 0 :(得分:0)
使用图像进行动画制作时,必须巧妙地将这些图像添加到阵列中。你的代码看起来很好。我怀疑的只有一行是:
[arrayAntaChiusura1 addObject:[UIImage imageWithContentsOfFile:
[[NSBundle mainBundle]
pathForResource: [NSString stringWithFormat:@"anta_sx%d", 6-i]
ofType:@"png"]]];
其他一切都很好。只需检查图像是否按顺序排列。
答案 1 :(得分:0)
我完全不明白你的问题,但是如果你想要连续动画对象,那么将重复计数设置为-1,等于无穷大,如下所示: -
UIImageView *immagineAntaChiusura1;
immagineAntaChiusura1 = [[UIImageView alloc] initWithFrame:CGRectMake(283, 82, 120, 130)];
immagineAntaChiusura1.animationImages = arrayAntaChiusura1;
immagineAntaChiusura1.animationDuration = 1.5;
immagineAntaChiusura1.animationRepeatCount = -1;
[immagineAntaChiusura1 startAnimating];
[self.view addSubview:immagineAntaChiusura1];