我有一个随机放在屏幕上的球体。
-(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;
由于它不断重现在屏幕的上边缘,因此效果不佳。
答案 0 :(得分:0)
你有没有意识到你在这一行写的内容?
sphereY = sphereY + 39 <= 275;
如果sphereY
,此行基本上将1
设置为sphereY + 39 <= 275
,否则设置为0
。这与:
if (sphereY + 39 <= 275)
{
sphereY = 1;
} else
{
sphereY = 0;
}
所以,是的,它始终位于0
或1
,这就解释了为什么它位于屏幕的顶部。
答案 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
。