0

UIViewメインビューにあるが、メインビューにUILabelある別のビューのサブビューであるとの衝突をチェックしようとしています。

を使用するCGRectContainsPointと、trueが返されません。フレームをチェックするとUILabel's、絶対位置ではなく、フレームが含まれているサブビューを基準にした値が返されます。これが問題かもしれないと思いました。

UILabel'sその場合、フレームの絶対値が必要であることを指定するにはどうすればよいですか?

4

1 に答える 1

0

NSView次の方法 を使用して、異なる座標系間で座標を変換できます。

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

2番目の引数がnilである場合、座標はウィンドウベース座標との間で変換されます。変数にも同様のメソッドがNSPointありNSSizeます。1つの解決策は、すべての長方形と点をウィンドウのベース座標に変換し、それらの座標での衝突をチェックすることです。

于 2012-05-17T02:53:07.543 に答える