2011-07-02 11 views
1

画面上をランダムに移動するUIButtonがあります。ボタンをクリックすると、今のところCCSpriteが含まれている新しいシーンがロードされます。ここでは、コードです:前のシーンのUIButtonがCCSpriteと重複しています

//in init 
CCSprite *a = [CCSprite spriteWithFile:@"a.png"]; 
[a setPosition:ccp(0,0)]; 
[self addChild:a]; 

はかなり簡単、そして「replaceScene」の後theHelloWorldScene.mのUIButtonは、右のスプライトの上に、まだ表示されている理由、それは私を切り株。どこが間違っていますか?

答えて

3
あなたが好きopenGLView なものを使用しているcocos2dシーンにUIButtonを追加しているので、私は仮定してい

[[[CCDirector sharedDirector] openGLView] addSubView:ボタン];

このような場合は、その後、あなたはHelloWorldSceneを交換する前に、あなたは

に似た何かを呼び出す必要があります[ボタンremoveFromSuperview]ボタンが(両方のインスタンスで)自分のUIButtonの名前です

UIKitオブジェクトは実際にはCocos2dとうまくマッチしないため、HelloWorldSceneのCCMenuItemでCCMenuを使用することをお勧めします。

+0

彼らは確かにしません。結束力の向上に取り組んでいただければと思います。 –

+0

はい、私はUIButtonsに精通しているためにCCMenuを避けようとしていたことに気付きました。しかし、これは良いはずです。ありがとう! – Appster

0

あなたは本当に十分な情報を与えていません。しかし、最も簡単な答えは、ボタンをもう見せたくない場合は、子(ボタン)を削除することです。ボタンにタグを設定し、[layer getChildByTag:(NSInteger)]を使用することができます。

+0

あなたのお返事ありがとうございます! – Appster

関連する問題