Donc, j'ai une énumération définie comme suit: J'ai une variable de type de carte de type défini comme suit: p> Comment puis-je accéder à la valeur de la dépôt de carte? Dans ce cas, j'essaie d'accéder à l'UISCREEN.MAIN.Bounds.Height - 100 Valeur de l'énumération. J'ai essayé d'y accéder avec p> mais malheureusement cela ne fonctionne pas. Quelqu'un sache comment je peux accéder à la valeur CGFLOAT de la position? P> P>
3 Réponses :
Vous devez utiliser un commutateur ici: si vous le souhaitez comme une expression em>, vous pouvez faire quelque chose comme: p> enum RelativeCardPosition {
case top
case middle
case bottom
}
struct CardPosition {
let relativeCardPosition: RelativeCardPosition
let offset: CGFloat
static func top(_ offset: CGFloat) -> CardPosition {
CardPosition(relativeCardPosition: .top, offset: offset)
}
static func middle(_ offset: CGFloat) -> CardPosition {
CardPosition(relativeCardPosition: .middle, offset: offset)
}
static func bottom(_ offset: CGFloat) -> CardPosition {
CardPosition(relativeCardPosition: .bottom, offset: offset)
}
}
Vous pouvez créer une propriété calculé em> position code> à l'intérieur du
Enum cartePosition code> et
retour code> la valeur associée à chaque < code> cas code>, c'est-à-dire
Je ne pense pas que cela aurait dû être évité. Peut-être que TIM a perdu ses clés . Ne t'inquiète pas pour ça :)
Pour obtenir la valeur associée à votre Cela ne vous donnera qu'un Valeur pour .bottom code> Vous utilisez
si le cas indique code> Syntaxe
.bottom code> et non pour l'un des autres cas énumants. p> p>
Swift Enum + Valeurs associées Code> Ce sont les mots-clés que vous manquez. Lire docs.swift.org/swift-book/languageGuide/enumerations.html # ID 148 par exemple.
Est-ce que cela répond à votre question? accéder à une valeur d'addition d'une association à Swift