2012-02-22 11 views
0

PopuupSceneレイヤCCLayer <CCRGBAProtocol> setOpacity:]未認識セレクタ

@interface PopupScene : CCLayer <CCRGBAProtocol> 

エラーメッセージ

2月22日11時06分31秒不明MyProjectと[443]: - [PopupScene setOpacity:]:インスタンスに送信された認識できないセレクタ0xa68ca80 Feb 22 11:06:31不明MyProject [443]:* 0123のために終了するアプリキャッチされない例外 'NSInvalidArgumentException'、理由:「 - [PopupScene setOpacity:]:認識されていないセレクタはインスタンスに送信

私は&をフェードインするにはどうすればよい...

をCCRGBAProtocolはsetOpacity方法がありますが、エラーが発生しましたCCLayerを使う? (不透明度アニメーション、CCFadeIn & CCFadeOut)

+0

あなたはPopupSceneの実装でsetOpacity /不透明メソッドの定義を追加しました。プロトコルを実装する必要があります。 setOpacityメソッドを呼び出している場所か、システムライブラリから呼び出されている場所か? – Ravin

+0

@ChangUZ:不透明度を設定できるように、あなたの詳細を追加しました。私の悪い、今日までこのサブクラスについて知りませんでした。 – YvesLeBorg

答えて

0

CCLayerは、このプロトコル(CCLayer.h参照)を実装していません。レイヤーの透明度を設定する必要が本当に必要な場合は、手作業で行う必要があります(@Ravinが示唆しているように)。基本的にsetOpacityメソッドを宣言して実装し、そのメソッド内でレイヤーの不透明度を設定する必要があると思われることを行います。レイヤーにスーパーインポーズされたスプライトが埋め込まれている場合や、プロトコルを実装していないその他のオブジェクトが埋め込まれている場合は、達成しようとしている結果を得るのが難しい場合があります。

私はちょうどあなたがcocos2dバージョン1.0.1を使用している場合は、

CCLayerColorがあること(urghhh)見つかったがCCRGBAProtocolプロトコルを実装CCLayerのサブクラスです。

CCLayerからのすべての機能は有効ですが、加えて、以下の新機能:

不透明

RGBの色

関連する問題