У меня есть перечисление:Enum случай '...' не является членом типа "...
enum State {
case FullOpen
case HalfOpen
case Closed
}
и этот код:
var stateForConversionView: State!
...
var previousState: State!
if true {
previousState = stateForConversionView!
switch previousState {
case .FullOpen:
stateForConversionView = .HalfOpen
case .HalfOpen:
stateForConversionView = .FullOpen
case .Closed:
stateForConversionView = .HalfOpen
default:
break
}
}
я получил ошибку на каждом switch:
Enum case 'FullOpen' not found in type 'State!'
Enum case 'HalfOpen' not found in type 'State!'
Enum case 'Closed' not found in type 'State!'
Я действительно не понимаю, почему. Может кто-нибудь объяснить мне, пожалуйста?
В основном это не рекомендуется объявлять переменные типа перечисления в любом виде, потому что опции перечисление предназначено всегда иметь определенное состояние. – vadian
Событие, если он неявно разворачивает необязательный 'State!', Вам все равно нужно добавить '!' – onmyway133