2010-12-03 85 views
0

我想用随机坐标在屏幕上移动一个球。但我的对象绕x轴移动!这里是我的代码:随机移动一个球

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:0.70]; 
[UIView setAnimationRepeatCount:1000]; 
[UIView setAnimationRepeatAutoreverses:YES]; 

CGFloat x = (CGFloat) random()/(CGFloat) RAND_MAX; 
CGFloat y = (CGFloat) random()/(CGFloat) RAND_MAX; 

CGPoint squarePostion = CGPointMake(y, x); 
blue3.center = squarePostion; 

[UIView commitAnimations]; 

编辑:

我我的代码更改为这可是不行的〜:

CGFloat x = (CGFloat) random()/(CGFloat) RAND_MAX * self.view.bounds.size.width; 
CGFloat y = (CGFloat) random()/(CGFloat) RAND_MAX * self.view.bounds.size.height; 

CGPoint squarePostion = CGPointMake(y, x); 

同样的情况!

回答

1

您将所有值缩放到0 ... 1,所以我希望您的球实际移动到(0,0)并留在那里。另外,你可以让你的x坐标换成CGPointMake。你需要扩展你的价值,你希望它是在该地区的随机位置在你的视图(如果blue3containerView子视图 - 这可能是自这里):

CGFloat x = (CGFloat) random()/(CGFloat) RAND_MAX * containerView.bounds.size.width; 
CGFloat y = (CGFloat) random()/(CGFloat) RAND_MAX * containerView.bounds.size.height; 

CGPoint squarePostion = CGPointMake(x, y); 
+0

请看到我的编辑问题 – 2010-12-03 09:28:38