Ich habe enum
deklaration.
Und benutze es in einer Methode:
%Vor%Wir alle wissen, dass wir das normalerweise so nennen können
%Vor%Aber wenn ich es in einigen Delegaten aufrufen muss, wo der Ganzzahlwert nicht vorhersehbar ist, als wie er aufgerufen wird.
Zum Beispiel:
%Vor% Hier wirft der Compiler einen Fehler Int is not convertible to 'OP_CODE'
. Versucht hier viele Permutationen. Aber nicht in der Lage, es herauszufinden.
Sie müssen den Rohtyp der Enumeration angeben
%Vor% addition
hat einen Rohwert von 0
, substraction
von 1
und so weiter.
und dann können Sie
tun %Vor%Weitere Informationen finden Sie hier: Ссылка
Falls Sie eine ältere Version von swift verwenden, funktionieren Roh-Enumerations ein wenig anders. In Xcode & lt; 6.1, müssen Sie fromRaw()
anstelle eines fehlbaren Initialisierers verwenden:
Sie können Rohwerte in Ihrer Enum:
%Vor%und verwenden Sie den fehlgeleiteten Initialisierer, der einen Rohwert als Eingabe verwendet:
%Vor% Beachten Sie, dass code
optional ist. Wenn der rohe Wert keiner gültigen Enumeration zugeordnet wird, gibt der Initialisierer nil zurück.
In Ihrem Fall:
%Vor% Außerdem können Sie bei einer Instanz der Enumeration den zugehörigen Rohwert mit der Eigenschaft rawValue
erhalten.
Hinweis: Enums haben sich in Xcode 6.1 ein wenig geändert. Wenn Sie eine frühere Version verwenden, lesen Sie @ GabrielePetronellas Antwort und die zugehörigen Kommentare.