Я пытаюсь определить, находится ли представление внутри другого представления, поэтому я использую CGRectContainsRect (view1, view2).Оба представления имеют одно и то же суперпредставление.
Если функция возвращает TRUE, я хочу переместить view2 вниз, чтобы он вышел из представления1 (offset = 120);в противном случае я хочу переместить его вверх, чтобы он появился в view1 (offset = -120).
Проблема в том, что функция всегда возвращает FALSE, а представление всегда перемещается вверх.Я не знаю, важно ли это, но view2 изначально не виден, я имею в виду за пределами видимых границ самого основного вида (я не имею в виду скрытый или альфа = 0).
Вот мой код:
CGPoint point = view2.center;
float offset = -120.0;
if (CGRectContainsRect(view1.frame, view2.frame)) {
offset = -offset;
}
[UIView beginAnimations:nil context:NULL];
self.view2.center = CGPointMake(point.x, point.y+offset);
[UIView commitAnimations];
Кто-нибудь может увидеть, что идет не так?
спасибо