1

私がやりたいのは、Cocos2d共有ディレクターに現在のシーンをUIKitのUIView(おそらくペン先からロードされたもの)に置き換えることです。Cocos2dとUIKitの間をきれいに移行するというアイデア。

私はこの問題へのいくつかのアプローチを見てきました。それらのほとんどは、同じシーンでUIKitとCocos2dをミックスすることに関するものです。私は、それらを別々に保ちたいと思います。1つのアプローチは、ディレクターGLViewのサブビューとしてUIViewのインスタンスを追加することです。そのようです:

UIView* cocosView = [[CCDirector sharedDirector] openGLView];
[cocosView addSubview:t];

UIViewをCocosレイヤーにオーバーレイしますか?

これは機能しますが、最初に空白のシーンを作成してそこに移行し、次にUIViewを追加してから、後でそれを削除して他のシーンに移行する必要があります。これはモジュール式ですが、少し面倒です。

より良いアプローチは、UIViewをノードにラップすることです。のようなもの:http: //www.cocos2d-iphone.org/forum/topic/6889

このための公式のcocos2d拡張機能はありますか?可能であれば、ストーリーボード/ペン先からUIViewをロードしたいと思います。とても感謝しております。

4

1 に答える 1

2

現在のシーンをUIKitのUIViewに置き換えます

cocos2d 1.xを使用している場合:http ://www.raywenderlich.com/4817/how-to-integrate-cocos2d-and-uikit

cocos2d 2.xを使用している場合:CCDirectorはUIViewControllerのサブクラスであるため、通常のメソッドを使用できます。アニメーションの停止/開始後のデルタ時間の計算には小さなバグがありますが、修正は簡単です。

于 2012-10-15T16:55:38.380 に答える