Почему я не могу использовать sceneWithSize:
внутри оператора switch? Если я создам объект своей новой игровой сцены за пределами корпуса коммутатора, он отлично работает? Но я переключаю игровые сцены в зависимости от того, какой пользователь выбрал spriteNode
. Почему это происходит, и есть ли альтернативный метод делать то, что я пытаюсь сделать?Метод не может использоваться в инструкции Switch?
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
/* Called when a touch begins */
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInNode:self];
SKNode *node = [self nodeAtPoint:location];
NSLog(@"Level Selected: %@", node.name);
int x = [node.name intValue];
switch (x) {
case 1:
// if I move this code outside the switch statement it works?
LevelOne *newscene = [LevelOne sceneWithSize:self.size]; // here is where I get an expected expression error?
//[self.view presentScene:newscene transition:[SKTransition doorsOpenVerticalWithDuration:1]];
break;
default:
break;
}
}
Технического объяснение: http://stackoverflow.com/questions/92396/why-cant-variables-be-declared-in-a- switch-statement – Cyrille
whoops thanks Я обвиняю фрагмент кода кода Xcode по умолчанию для оператора case: P –