2011-12-15 6 views
0

基本的に私がDynamicBodyを持っているので、ユーザーが画面に触れると36のスプライトが追加されます。 AndEngineで画面上にテキストラベルを追加することが可能かどうかを知りたいことです。例えば、私は異なるフラグを持っていて、テキストラベルはイギリスと言っています。ユーザーがEnglish flagを押すと、選択したフラグが正しいときにそのフラグを削除し、たとえば、テキストをUSAに変更したいとします。だから私は何とか選択されたスプライトとそれが正しい場合、スプライトを削除する画面上のテキスト間の接続を作成する必要があります。Android Andengine Psyhics - DynamicBodyのテキストとスプライトの関係

これまでのところ、スプライトを追加/削除することはできますが、テキストを追加するだけの助けと、そのスプライトに応じてどちらが正しいスプライトであるかを知る方法が必要です。

もう1つ目の質問は、どのような遅れやそのようなこともなく、画面上に36のスプライトを異なる位置に置くのに最適な方法です。あなたがこの記事を見てみることができますサンプルコードについて

AndEngine Sprites

答えて

3

AndEngineは、テキストラベルをサポートしています。 Textは、は変更不可のテキスト(コンストラクタで一度だけ設定)のラベルで、ChangeableTextはテキストを変更できるラベルです。

Entityクラスには、getUserData()setUserData(Object pData)という2つのメソッドがあります。これらを使用して、どのスプライトがクリックされたかを知ることができます。たとえば :

Sprite sprite = new Sprite(...); 
sprite.setUserData("sprite"); 

そして、それがクリックされた場合、その後、あなたはそれがあるスプライトを見つけることができます:36個のスプライトはゲームはラグ作るべきではありません

if(clickedSprite.getUserData().equals("sprite")) 
    ..... 

Loading ...読み込んでいます36大きなテクスチャがあるかもしれませんが、少なくともいくつかのスプライトが同じテクスチャから作成されていれば問題ありません。

関連する問題