2

在我的应用程序中,我有两个按钮和一个每秒触发一个动作的计时器。每秒,它会生成四个随机数。数字用作按钮的 X 和 Y 值,按钮移动到新点。但是,有时新点很接近,因此按钮重叠。我如何检查以确保不会发生这种情况?我已经尝试检查CGRectIntersectsRect按钮框架是否存在,但这无济于事。

谢谢你的帮助!

4

1 回答 1

1

只是为了验证,您的CGRectIntersectsRect代码/结构看起来有点类似于这个权利:

-(void)update {

// This is the method that gets called every second where your four numbers are randomly generated

// Generate random numbers here
// Position the buttons based on 2 of the random numbers

if (CGRectIntersectsRect(button1.frame, button2.frame) {

 // regenerate the four numbers
 // reposition your buttons
}

另外,我只是想知道,为什么每一秒?如果你愿意,也许可以在不同的线程上执行它,并使其每秒 10 次,这样按钮重叠不会显示太久,但这取决于你想要它的速度我猜......还有你为什么要生成 4如果您只使用两个随机数(据我们所知)。

但是,最终我们需要查看您的代码,否则我们无法看到您可能做错了什么。

于 2012-05-20T06:25:05.123 回答