没有用于选择器场景的已知类方法? [英] No known class method for selector scene?
本文介绍了没有用于选择器场景的已知类方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在这里为我的游戏创建一个主菜单它不能编译,但我不明白为什么
I am creating a Main menu for my game here It does not compile but i do not understand why
// Main Menu.m
//
//
//
#import "MainMenu.h"
#import "CCTouchDispatcher.h"
#import "Instructions.h"
CCSprite *seeker1;
CCSprite *cocosGuy;
@implementation MainMenu
+ (CCScene *) scene
{
CCScene * scene = [CCScene node]; // scene is an autorelease object
MainMenu * layer = [MainMenu node]; // later is an autorelease object
[scene addChild: layer]; // add layer as a child to scene
return scene; // return the scene
}
- (id) init
{
if ( ( self = [super init] ) )
{
[ self setUpMenus ];
}
return self;
}
- (void) setUpMenus
{
// create menu items
CCMenuItemImage * startButton = [CCMenuItemImage itemFromNormalImage:@"startbutton.png"
selectedImage:@"startbutton_selected.png"
target: self
selector: @selector (doSomethingOne:)];
CCMenuItemImage * instructionsButton = [CCMenuItemImage itemFromNormalImage:@"instructionsbutton.png"
selectedImage:@"instructionbutton_selected.png"
target: self
selector: @selector(doSomethingTwo:)];
CCMenuItemImage * unlockList = [CCMenuItemImage itemFromNormalImage: @"unlocklist.png"
selectedImage:@"unlocklist_selected.png"
target: self
selector: @selector(doSomethingThree:)];
// create the menu and add the items to it
CCMenu * myMenu = [CCMenu menuWithItems: startButton, instructionsButton, unlockList,nil];
// arrange the items vertically
[myMenu alignItemsVertically];
// add the menu to the scene
[self addChild:myMenu];
}
- (void) doSomethingOne: (CCMenuItem *) menuItem
{
}
- (void) doSomethingTwo: (CCMenuItem *) menuItem
{
[[CCDirector sharedDirector] replaceScene:
[CCTransitionFade transitionWithDuration:0.5f scene:[Instructions scene] ]];
}
- (void) doSomethingThree: (CCMenuItem *) menuItem
{
}
@end
为什么会出现错误:选择器场景没有已知的类方法?关于doSomethingTwo.我是否需要在.h文件中导入某些内容?或实施?谢谢您能为我提供的任何帮助.
Why do I get the error that there is No known class method for the selector scene? regarding doSomethingTwo. Do I have to import something in the .h file? or an implementation? Thank you for any help you can provide me.
推荐答案
Instructions类是否实现了此选择器?
Does the Instructions class implement this selector?
+(id) scene
{
id scene = [CCScene node];
return scene;
}
指令类的接口是否声明了该选择器,以便其他类可以引用它?
And does the Instruction class' interface declare this selector so other classes can reference it?
@interface Instructions : CCLayer
{
}
+(id) scene;
@end
你们两个都需要.
这篇关于没有用于选择器场景的已知类方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文