我正试图这样做,当我的图像视图产生到屏幕时,它们向下滚动但是由于某种原因我的所有星形物都会产生并且不移动......这是我的代码。
astroidArray = [[NSMutableArray alloc] init];
UIImage *astroid = [UIImage imageNamed:@"astroidwhite.png"];
UIImageView *astroids = [[UIImageView alloc] initWithImage:astroid];
//set X and Y of the new imageView
astroids.center = CGPointMake(100 , 100 );
astroids.center = CGPointMake(astroids.center.x - astroidVelocity.x , astroids.center.y - astroidVelocity.y);
astroidVelocity = CGPointMake(0,5);
//add to array
[astroidArray addObject:astroids];
//add to the view, so it gets displayed.
[self.view addSubview: astroids];
答案 0 :(得分:0)
我不太确定他们为什么会移动 - 如果星形速度固定,这个代码总是会将一个小行星放在100,100偏移处,无论速度值是什么......
这个代码是重复调用的吗?
如果是这样,我只会将对象添加到视图一次,然后每次要移动它时只修改astroids.center。
实际上你可能应该使用CoreAnimation,或者更像是某种使用OpenGL的2D图形引擎,如Cocos2D。