如何设置随机放置的对象的边界以确保它不会落后于iAd

时间:2014-10-19 20:34:34

标签: ios xcode bounds

我有一个随机放在屏幕上的球体。

-(void)PlaceSphere{

sphereX = arc4random() %492;
sphereX = sphereX + 34;
sphereY = arc4random() %249;
sphereY = sphereY + 39;

sphere.center = CGPointMake(sphereX, sphereY);

}

我目前在应用程序上有iAd。如何设置它以使其不会落后于iAd?我没有使用自动布局,但我正在使用自动调整。

我尝试使用

sphereY = sphereY + 39 <= 275;

由于它不断重现在屏幕的上边缘,因此效果不佳。

3 个答案:

答案 0 :(得分:0)

你有没有意识到你在这一行写的内容?

sphereY = sphereY + 39 <= 275;

如果sphereY,此行基本上将1设置为sphereY + 39 <= 275,否则设置为0。这与:

相同
if (sphereY + 39 <= 275)
{
    sphereY = 1;
} else 
{
    sphereY = 0;
}

所以,是的,它始终位于01,这就解释了为什么它位于屏幕的顶部。

答案 1 :(得分:0)

如果您的iAd位于屏幕底部,请尝试从sphereY&#34;%&#34;中删除iAd的高度。值,然后在行尾添加iAd的高度。

喜欢这个:

sphereY = (arc4random() % (249 - /* iAd height */)) + /* iAd height */

如果您的iAd位于屏幕顶部,请取消高度,但不要再次添加。

喜欢这个:

sphereY = arc4random() % (249 - /* iAd height */)

答案 2 :(得分:0)

您的最小值应该是球体的半径。并且你的最大值应该是(视图的高度) - (iAd的高度+球体的半径)。在这两个值之间生成随机数的公式为arc4random()*(Max - Min) + Min