我正在尝试使用Cocos2d构建iPhone应用程序。但是我使用了四种类型的类 像贝娄 -
@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类。
答案 0 :(得分:20)
如果您问如何将UIKit视图等附加到cocos2d-iphone项目,您只需要这样做:
[[[Director sharedDirector] window] addSubview:myView];
更新到cocos 0.7,现在是:
[[[Director sharedDirector] openGLView] addSubview:myView];
在科科斯0.99:
[[[CCDirector sharedDirector] openGLView] addSubview:myView];
在Cocos 2.0中
[[[CCDirector sharedDirector] view] addSubview:myView];
答案 1 :(得分:2)
仅从代码中回答这个问题非常困难,但我认为你需要回过头来阅读一下UIKit设计和cocos2d编程。
HelloController是一个视图控制器 - 你不能'显示'它。视图控制器是一个类,它从视图中回复消息并控制它从模型中显示的数据。
FlipView是一个ImageView,是UIView的子类。要让UIKit渲染此图像,您需要使用[UIView addSubView:...]
以下是我认为您想要做的事情:
就像我说的那样,这是一个非常普遍的问题,我真的认为你应该回到文档并考虑你的设计。 Apple的文档很好,现在市场上有一些好的iPhone书籍。