2012-02-14 4 views
1

6個のUIViewで構成された回転カルーセルメニューが、self.viewのサブビューとして追加されました。カルーセルを回転させると、サブビューの一部がユーザーに最も近いサブビューの後ろに部分的にあるのですが、ユーザーに最も近いサブビューが後ろに追加されていない可能性があるため、後ろのサブビューが表示されます。私はそれに触れたときにbringToFrontサブビューをする方法はありますか?

私の質問は、最初に、または最後にビューに追加されたかどうかは関係ありませんので、サブビューに触れるたびにbringToFrontをプログラムで使用する方法がありますか?

答えて

0

2つのビューがタッチイベントに応答し、一方が他方のビューの前にある場合、もう一方はタッチを受信しません。 イベントチェーン(UIViewのサブクラス化とhitTestのオーバーライド...)を使いこなす代わりに、カルーセルを回転させながらビューを並べ替えることをお勧めします。

正面に表示されるビューは、ビュー階層の最上位ビューである必要があります。

+0

まさに私がやりたいことですが、カルーセルが回転しているときにビューの順序を変更する方法がわからないdanielkbxに感謝します。今私はそれをコード化しています:trackingTouch = [touches anyObject]; [self.view bringSubviewToFront:view2]; –

関連する問題