web-dev-qa-db-ja.com

swift:型と値を持つ列挙定数

私は知っている、列挙定数はSwiftでこのようにする必要があります

enum CompassPoint {
    case North
    case South
    case East
    case West
}

しかし、以下のObjective-Cコードのように、どのように最初の要素に値を割り当てることができますか

enum ShareButtonID : NSInteger
{
   ShareButtonIDFB = 100,
   ShareButtonIDTwitter,
   ShareButtonIDGoogleplus

}ShareButtonID;
34
Mani

列挙型にタイプを指定してから値を設定する必要があります。以下の例では、Northは_100_に設定され、残りは_101_、_102_などになります。 Cや_Objective-C_のように。

_enum CompassPoint: Int {
    case North = 100, South, East, West
}

let rawNorth = CompassPoint.North.rawValue // => 100
let rawSouth = CompassPoint.South.rawValue // => 101
// etc.
_

更新toRaw()rawValueに置き換えます。

89
kmikael