0

我正在尝试检查UIView主视图中的一个与主UILabel视图中另一个视图的子视图的碰撞。

当我使用CGRectContainsPoint时,它不会返回 true。当我检查UILabel's框架时,它返回相对于它所在的子视图的值,而不是绝对位置。我想这可能是问题所在。

如果是这样,我如何指定我想要UILabel's框架的绝对值?

4

1 回答 1

0

您可以使用以下方法在不同坐标系之间转换坐标NSView

- convertRect:(NSRect) fromView:(NSView)
- convertRect:(NSRect) toView:(NSView)

如果第二个参数是nil,则坐标从/到窗口基坐标转换。NSPoint对于和NSSize变量也存在类似的方法。一种解决方案是将所有矩形和点转换为窗口基础坐标并检查这些坐标中的碰撞。

于 2012-05-17T02:53:07.543 回答