私は、帽子、髪、目などのものを身体に付け加えることで、ドレスアップをプレイできるアプリを開発中です。ユーザーは基本的にメニューから項目をドラッグし、何らかの形で「addSubview: or insertSubview:belowSubview:/aboveSubview:
」の画面にグラフィックをインスタンス化します。サブビュー「レイヤー」をデザインするにはどうすればいいですか?
質問には、常に他の項目の下に表示される項目があります。たとえば、「目」(青、茶、緑)のグラフィックスは常に「眼球」(さまざまな目の形や表現)の上に表示されます。しかし、私はユーザーに任意のプロセスを従わせることを強制しませんし、好きなようにドラッグ&ドロップすることもできますので、addSubview:適切ではないかもしれませんが、insertSubview:belowSubview:/ aboveSubview:あなたが下または上に追加したいアイテム。
理想的には、私はこのようなスタックに従います: アクセサリー>ヘアスタイル>眉毛>眼球>目...など。誰もこれを実装する方法の設計アイデアを持っていますか?ユーザーがメニューからヘアスタイルをドラッグすると、
self.view
├─ self.accessoriesView
│ ├─ braceletView
│ └─ toeRingView
├─ self.hairStylesView
│ ├─ blondeWigView
│ └─ hairClipView
├─ self.eyebrowsView
│ └─ archedEyebrowView
├─ self.eyeballsView
│ ├─ bloodshotEyeballView
│ └─ regularEyeballView
├─ self.eyesView
│ └─ greenEyesView
├─ etc.
self.hairStylesView
のサブビューとして新しいヘアースタイルビューを追加:ありがとう
ありがとう、これは完全に動作します。しかし、これを実装することで、ViewControllerのビューにUIViewのスタックが作成されます。あなたのジェスチャーレコグナイザーが別のクラスで作成されている場合は、そのクラスにアクセスする方法が必要です。何も触れなかった場合、サブクラスでhitTestを使用して、これらのビューが次のサブビューに渡るようにしました:http://vectorvector.tumblr.com/post/2130331861/ignore-touches-to-uiview-subclass-but-not-その – user339946
私はあなたがそれについて尋ねるかどうか疑問に思いました: –