我正在尝试检测视图是否在另一个视图中,因此我正在使用CGRectContainsRect(view1,view2)。两个视图共享相同的超级视图。
如果函数返回TRUE,我想向下移动view2使其离开view1(offset = 120);否则,我想向上移动它,使其进入view1(偏移= -120)。
问题是函数总是返回FALSE,并且视图总是向上移动。 我不知道它是否重要但是view2最初是不可见的,我的意思是出于主视图本身的可见边界(我不是指隐藏也不是alpha = 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];
有人能看出出了什么问题吗?
感谢