CGRectIntersectsRect Проблема - PullRequest
0 голосов
/ 14 июля 2011

Я делаю приложение с лабиринтом, я помещаю шарик в лабиринт в конструкторе интерфейсов (я поставил для него розетку) У меня есть штрихи:

 -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];
CGPoint point;
point = [touch locationInView:self.view];

ball.center = point;

if (CGRectIntersectsRect(ball.frame, maze.frame)) {
   //my stuff
}


   }

У меня есть два CGRectIntersectsRect, еслиЯ говорю, что если рамка мяча касается рамки лабиринта, то // мои вещи случаются, но по какой-то причине всякий раз, когда я пытаюсь переместить шар, не касаясь рамки лабиринта, // мои вещи случаются.Я не знаю, почему, может быть, это потому, что мяч находится в лабиринте, вероятно, не потому, что я сказал, что cgrectintersectsrect frame не имеет границ.так почему это происходит?

У меня есть другой iboutlet uiimageview, называемый флагом, у меня тот же тип кода cgrectintersectsrect, и он работает в тех же самых контактах, так почему это не работает

1 Ответ

1 голос
/ 14 июля 2011

попробуйте это

UITouch *touch = [[event allTouches] anyObject];

CGPoint point;

point = [touch locationInView:self.view];


point = [[CCDirector sharedDirector] convertToGL: point];


if (CGRectIntersectsRect(ball.bounds, maze.bounds)) {


//frame - x,y,w,h

//bounds- w,h
...