私のUIView
オブジェクトの交差を検出することに問題があります。私は以下で使用しているものだ別のスーパービューで2つのUIViewオブジェクトの共通部分を検出する
は:交差点については
私は1つを変換する方法を理解する必要がある2つのオブジェクトは、別の座標系への最初のスーパービューからシステムを調整します。
私はこのアプローチを使用しました:- (CGRect)convertRect:(CGRect)rect fromView:(UIView *)view
ここにはlinkと記載されています。
この方法を使用するのは非常に簡単です。しかし、異なるケースでは、ドキュメントの記述が少ししかないので難しいです(ただし、おそらく私にとって)。
これは、下の画像に示すサブビューの構造です。私はすでにドラッグアンドドロップオブジェクトのためのすべてのメソッドを持っています。しかし、私はどのようにUIView
AとUIView
Bの交差点を取得する必要があります。手伝ってくれてありがとう。
階層を記述してもらえさらに詳細に? 1つのスーパービューにビューAとBの両方が含まれていますか? –
あなたのイラスト – Till
に遠近法のスキューを+1してください。スーパービューについては、AビューとBビューの2つの異なるスーパービューがあります。私がBビューをドラッグしているとき、Bビューが置かれているスーパービューに関連する座標だけが変化しています。ですから、B座標をAビューが置かれている座標に変換するには、UIViewクラスで宣言する多くのconvertRectメソッドの1つを使用する必要があります。この後、変換された座標とビューrectが交わる必要があります。非常に分かりやすいですが、このようなものを作るのは非常に単純ではありません) –