0

ドーナツ型の 2 つのレイヤーで構成されるカスタム コントロールを作成しています。真ん中がボタン、ドーナツ部分が回転ホイールです。

2 つの部分を、独自の個別の画像を持つ 2 つの個別の UIControls として作成しました。

現在の私の問題は、Second Controlが私の をオーバーライドしていることFirst Controlです。

プログラムで位置をオーバーラップする方法はありますか?

ストーリーボードのスクリーンショット:

ここに画像の説明を入力

という特定のビューに注目してくださいbuttonViewRotary knobはドーナツ、Buttonは中ボタンです。

前もって感謝します。

4

2 に答える 2

1

ドーナツの部分が真ん中の部分よりも大きいと思いますよね?もしそうなら、hitTest:WithEvent:関数を使用して 2 つを区別できるはずです。ただし、中間セクションは階層内の外側セクションの下にある必要があります。hitTest は、タッチされた階層の最も深いビューを返します。

EDIT拡張コメントによると、問題はXIBで逆になっていることでした。それらを切り替えると、中央セクションが一番上に表示されます.

于 2012-04-28T15:34:35.813 に答える
0

両方を含むビューで、 を呼び出すだけ[self bringSubviewToFront:firstLayer]です。

于 2012-04-28T16:01:11.997 に答える