0

基本的な質問ですが、AppDelegate.mのrunWithScene:メソッドを[GameSceneノード]に変更したかっただけです。GameSceneクラスを作成し、その上にGameLayerクラスのインスタンス変数を作成しましたが、このエラーが見つかりました。これは厄介です。

Undefined symbols: "_OBJC_CLASS_$_GameLayer", referenced from: objc-class-ref-to-GameLayer in GameScene.o ld: symbol(s) not found collect2: ld returned 1 exit status

そして、これが私のGameSceneコードです:

GameLayer *GameLayer; GameLayer = [GameLayer node];

助けていただければ幸いです。

4

2 に答える 2

1

GameLayer クラスがターゲットに含まれていることを確認してください。ユーティリティを表示します (右側、上部、[表示] ボタン)。その後、GameLayer.m モジュールのプロジェクト ナビゲーターをクリックします。ターゲット メンバーシップはユーティリティに表示されます。ターゲットがそこでクリックされない場合、GameLayer クラスはコンパイルされない (エラーがない) ため、リンカーはオブジェクト モジュールを見つけられません。

于 2012-05-26T14:38:20.927 に答える
0

GameLayerクラスをインポートしていないようです。実装の上部で、インポート ステートメントの横に以下を追加します。

#import "GameLayer.h"

アップデート:

わかりました、私は何が起こっているのか知っていると思います。ソースをコンパイルする必要があります。[プロジェクト設定]、[プロジェクト ターゲット]、[ビルド フェーズ] の順に移動し、最後に [ソースのコンパイル] ドロップダウン リストに GameLayer を追加します。

于 2012-05-25T23:50:03.463 に答える