7

Cocos2d を使用して iPhone アプリを作成しようとしていますが、次のような 4 種類のクラスを使用しました。

@interface MenuScene : Scene {}

@end
@interface FlipView : UIImageView
{
    CGPoint startTouchPosition;
    NSString *dirString;
    UIImageView *firstPieceView;   
    UIImageView *secondPieceView;

}
@end

@interface HelloController : UIViewController
@end


@interface MenuLayer: Layer{
        Todo *todo;
        Menu * menu;
        sqlite3 *database;
        NSMutableArray *todos;
    NSString *dirString;
    CGPoint startTouchPosition;
}
@property (nonatomic, retain) NSMutableArray *todos;
-(void) button1: (id)sender;
-(void) button2: (id)sender;
-(void) black_jack: (id)sender;
@end

しかし、MenuLayer クラスを介して FlipView および HelloController クラスを表示するにはどうすればよいですか。

4

2 に答える 2

20

UIKit ビューなどを cocos2d-iphone プロジェクトにアタッチする方法を尋ねている場合は、次のようにするだけです。

[[[Director sharedDirector] window] addSubview:myView];

cocos 0.7 に更新され、次のようになりました。

[[[Director sharedDirector] openGLView] addSubview:myView];

そして Cocos 0.99 では:

[[[CCDirector sharedDirector] openGLView] addSubview:myView];

そしてCocos 2.0で

[[[CCDirector sharedDirector] view] addSubview:myView];
于 2009-02-10T01:18:31.657 に答える
2

コードだけでこの質問に答えるのは非常に難しいですが、UIKit の設計と cocos2d プログラミングについて少し遡って読む必要があると思います。

HelloController はビュー コントローラーです。「表示」することはできません。ビュー コントローラーは、ビューからのメッセージに応答し、モデルから表示されるデータを制御するクラスです。

FlipView は、UIView のサブクラスである ImageView です。UIKit にこの画像をレンダリングさせるには、別のビューに追加する必要があります。[UIView addSubView:...]

あなたがやりたいと思うことは次のとおりです。

  1. メニュー項目はタッチ イベントを受け取ります。次のように通知します。
  2. ビューコントローラー
  3. UIImage をメイン ビューに追加します

私が言ったように、これは非常に一般的な質問であり、ドキュメントに戻って設計について考える必要があると本当に思います. Apple のドキュメントは優れており、現在市場には優れた iPhone の本がいくつかあります。

于 2009-02-10T01:04:54.293 に答える