2011-12-14 6 views
3

私は、UILabelsをタップしてドラッグする機能が必要なアプリケーションに取り組んでいます。 2つめの課題は、他のUILabelsを画面上で移動させて(重複しないように)必要なことです。だから私は1つのラベルをドラッグして別のラベルにドラッグすると、2つ目のラベルにぶつかります。おそらく重要なことは、各ラベルもランダムな回転であることです。別のUILabelでUILabelを押す

申し訳ありませんが、私はこの種の衝突検出でどこから始めるべきかわからないので、共有するコードはありません。

おそらくCGRectIntersectRect()?

+0

ゲームメカニックスの入門書、特に衝突検出については、まず読んでおくべきです。その後、衝突検出コードの実装を開始するための良い場所は、コンテナビューの '-layoutSubviews'にあるかもしれません。ドラッグされたビューの位置を変更しているコードが、コンテナまたは何を持っているのであれば、正しく '-setNeedsLayout'を呼び出すようにしてください。 –

+0

私はまだこれらのいずれかを使用していませんが、1つは役立つかもしれません:http://box2d.org/forum/ http://box2d.org/forum/(しかし余計かもしれません) –

+0

私が作成しているものはゲームではありません。何か違いがあるのでしょうか、ゲーム/グラフィックスフレームワークが最善の策ですか? –

答えて

0

Cocos2dを使用することを学ぶと、重複する問題の画像のレイヤーを設定できます。独自のラベルを作成して、ユーザーがタッチした場所に向かって加速するように位置を設定したり、必要に応じてカスタマイズしたりすることができます。

また、衝突検出では、これはCocos2dで簡単に実装できます。

+0

なぜ人々はCocos2dをSDKのOpenGLフレームワークよりも好むのですか?より簡単に? –

+0

@ JakeSankeyはい – Gabe