2015-10-24 3 views
-1

Я понятия не имею, что это неправильно, но следующий код дает мне много ошибок в переключатель заявление:Swift 2 - переключатель заявление дает мне ошибки

enum GameState { 
    case Start 
    case Tutorial 
    case Play 
    case ShowingScore 
    case GameOver 
} 

в классе GameScene:

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
    for touch: AnyObject in touches { 
     let location = touch.locationInNode(self) 

     switch GameState { 
     case .Start: break 
     case .Tutorial: break 
     case .Play: 
      beginningTouchPosition = location 
      tappedForBird = true 
      break 
     case .ShowingScore: break 
     case .GameOver: break 
     } 
    } 

} 

сообщения об ошибках я получаю:

  1. Ожидаемое имя элемента или вызов конструктора после имени типа (это в переключатель GameState линии)
  2. Enum случай «Пуск» не найден в типе «GameState» (я получить это не только для .start, но и для каждого GameState случая)
+1

Вы не должны помещать переменную в блок переключателя, а не в тип данных? – Arc676

+0

Я почти уверен, что использовал это раньше, и это сработало. – Larisa

+0

У вас, вероятно, была переменная с тем же именем, что и тип данных, но в другом случае (например, 'gameState', как в случае с GameState) – Arc676

ответ

4

Вы включения перечислимого типа GameState.
Вы должны включить переменную, содержащую один из случаев GameState

Смежные вопросы