嘿,我是Xcode的新手,所以也许这有一个非常简单的解决方案,在那种情况下,我很抱歉,但我已经尝试了所有内容并在线查看,到目前为止还没有任何工作。基本上,我创建了一个continueButton,以便在完成关卡后转换到应用程序中的下一个场景。下面是代码的样子
UIButton *continueButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
continueButton.frame = CGRectMake(120, 150, 80, 44);
[continueButton setTitle:@"Continue" forState:UIControlStateNormal];
[continueButton addTarget:self action:@selector(SKTransition:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:continueButton];
然后我定义了当我点击continueButton时会发生什么。
-(void)buttonPressed:(UIButton *)sender
{
SKAction *levelChange = [SKAction runBlock:^{
SKTransition *doors = [SKTransition
doorsOpenVerticalWithDuration:2];
SKScene *Level2Scene = [[Transition2Scene alloc]
initWithSize:self.size];
[self.view presentScene:Level2Scene transition:doors];
[self runAction:levelChange];
}];
}
但是每当我运行该应用程序并单击continueButton时,我都会收到此错误。
2014-07-27 21:14:14.225 MazeGame [40846:60b] - [Level1Scene SKTransition:]:无法识别的选择器发送到实例0x14158670 (LLDB)
此时在代码中。
#import <UIKit/UIKit.h>
#import "SpriteAppDelegate.h"
int main(int argc, char * argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([SpriteAppDelegate class]));
}
}
我不确切地知道出了什么问题或我该做什么,并且非常感谢一些帮助/建议,谢谢!
答案 0 :(得分:1)
我的猜测是问题就在这一行:
[continueButton addTarget:self action:@selector(SKTransition:) forControlEvents:UIControlEventTouchUpInside];
应该是:
[continueButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];