J'ai fait ces IBOutlets (marqués d'une bordure rouge) en utilisant ctrl + drag
Mais je n'aime pas avoir exactement la même ligne 9 fois (DRY)
Comment puis-je mettre ces IBOutlets dans un tableau?
vous pouvez définir une collection générique de points de vente dans Swift comme ceci:
@IBOutlet var collectionOfViews: Array<UIView>? // = [UIView]?
ou pour par exemple UIButton
objets:
@IBOutlet var collectionOfButtons: Array<UIButton>? // = [UIButton]?
vous pouvez trouver vos collections dans le groupe Outlet Collections comme c'est habituellement le cas dans le fichier Propriétaire du fichier :
il aurait l'air sur ma console après avoir connecté 5 boutons aléatoires:
Suivez ces étapes pour créer un tableau de points de vente et le connecter avec les éléments IB:
-
class ViewController2: UIViewController {
@IBOutlet var collection:[UIView]!
override func viewDidLoad() {
super.viewDidLoad()
}
}
Solution ici Swift - Equivalent IBOutletCollection
@IBOutlet var objectCollection: [Object]
Commencez par le volet d'affichage où vous voyez à la fois votre code et le storyboard. Lorsque vous établissez votre première connexion IBOutlet de l'interface utilisateur à votre code, il suffit de regarder attentivement le champ déroulant Connexion et de sélectionner l'option appelée "Collection de prises". Cela créera automatiquement un tableau d'IBOutlets. Ensuite, cherchez le petit cercle noir dans un cercle qui est placé dans votre code où le tableau est créé. Faites simplement glisser de ce cercle tous les autres objets d'interface utilisateur que vous souhaitez connecter à cette même collection (vous ne savez pas si vous pouvez mélanger des types). De même, vous pouvez connecter tous les objets à une action en faisant glisser le premier point noir créé vers tous les autres objets que vous souhaitez relier à cette action. Pensez également à EnumerateSequence () pour vous aider à utiliser cette collection. Doux droit?