Considérer: enum Line { case Horizontal(CGFloat) case Vertical(CGFloat) } let leftEdge = Line.Horizontal(0.0) let leftMaskRightEdge = Line.Horizontal(0.05) Comment puis-je accéder, par exemple, à la valeur associée à lefEdge , directement, sans utiliser une instruction switch? let noIdeaHowTo = leftEdge.associatedValue + 0.5 Cela ne comstack même pas! J’ai regardé ces questions SO mais aucune des réponses […]
J’ai cette énumération avec les valeurs Ssortingng , qui seront utilisées pour indiquer à une méthode API qui se connecte à un serveur quel type de serveur possède un message. J’utilise Swift 1.2, donc les énumérations peuvent être associées à Objective-C @objc enum LogSeverity : Ssortingng { case Debug = “DEBUG” case Info = “INFO” […]
Quelqu’un peut-il expliquer quand et quand ne pas utiliser une affectation «faible» à un pointeur de délégué dans Swift, et pourquoi? Je crois comprendre que si vous utilisez un protocole qui n’est pas défini comme une classe que vous ne pouvez ni ne souhaitez atsortingbuer, atsortingbuez votre pointeur de délégué à faible. protocol MyStructProtocol{ //whatever […]
[Rapide] Bonjour, j’essaie de comprendre plus précisément la «fermeture» de Swift. Mais @escaping et Completion Handler sont trop difficiles à comprendre J’ai cherché de nombreux messages et documents officiels sur Swift, mais je pensais que ce n’était toujours pas suffisant. Ceci est l’exemple de code des documents officiels var completionHandlers: [()->Void] = [] func someFunctionWithEscapingClosure(completionHandler: […]
Donc, ce que je veux avoir, c’est une classe qui peut faire en sorte qu’une fermeture lui soit transmise dans une fonction, elle peut aussi vouloir ignorer une telle fermeture. Comment puis-je vérifier si la variable de fermeture est définie et comment puis-je la supprimer lorsque j’en ai fini avec? Impossible d’invoquer ‘! =’ Avec […]
Mon application a un protocole pour les contrôleurs de vue de détail, indiquant qu’ils doivent avoir une propriété viewModel : protocol DetailViewController: class { var viewModel: ViewModel? {get set} } J’ai aussi quelques classes différentes qui implémentent le protocole: class FormViewController: UITableViewController, DetailViewController { // … } class MapViewController: UIViewController, DetailViewController { // … } […]
Je voudrais étendre Array pour append la conformité à un nouveau protocole – mais seulement pour les tableaux dont les éléments eux-mêmes sont conformes à un protocole spécifique. Plus généralement, je souhaiterais que des types (protocoles ou types concrets) avec des parameters de type implémentent un protocole uniquement lorsque les parameters de type correspondent à […]
J’essaie de profiler une application Swift dans Instruments et j’ai des difficultés car les symboles de débogage pour les libswiftCore.dylib et l ibswiftFoundation.dylib ne sont pas affichés. Le texte de survol suggère d’utiliser File -> Symbols pour sélectionner manuellement les fichiers dSYM, mais je n’ai aucune idée de leur emplacement ou même s’ils existent. Les […]
Est-ce que quelqu’un sait comment je peux saisir une variable d’environnement dans Swift?
J’essaie d’append un tuple (par exemple, un tuple à 2 éléments) à un tableau. var mySsortingngArray: (Ssortingng,Int)[]? = nil mySsortingngArray += (“One”, 1) Ce que je reçois c’est: Impossible de trouver une surcharge pour ‘+ =’ qui accepte les arguments fournis Astuce: j’ai essayé de faire une surcharge du ‘+ =’ par livre de référence: […]