我试图用随机坐标在屏幕上移动一个球。但我的物体绕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);
也一样!
答案 0 :(得分:1)
你将所有值都缩放到0 ... 1,所以我希望你的球实际上移动到(0,0)并保持在那里。此外,您可能在CGPointMake
中交换了x任何y坐标。您需要将您的值扩展到您希望它所在的区域。对于您的整个视图中的随机位置(如果blue3
是containerView
的子视图 - 这可能是自我):
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);