2017-10-12 4 views
0

J'ai 4 vues avec un Headerpart que j'ai externalisé dans un containerview pour avoir les mêmes champs et disposition sur les 4 vues. A l'intérieur de mon conteneur, j'ai beaucoup d'étiquettes que je sais vouloir remplir avec des données. Mon problème est maintenant, que je dois remplir les étiquettes en conséquence pour jouer l'utilisateur sélectionné. le jeu est une énumération dans ma classe de joueur. Je n'ai aucune idée de comment je peux obtenir cette information à l'intérieur de mon containerview et définir la variable de jeu en conséquence pour effectuer mon code. Y a-t-il une solution pour obtenir le storyboardid à partir de la vue que mon containerview est sur le containerview?À partir d'un conteneur, comment accéder au contrôleur de vue contenant le conteneur dans Swift?


jeu interrupteur

cas .Coinflip:

Player1PointsLabel.Text = (player1.points.coinflip)

cas .RollingDices

Player1PointsLabel.Text = (player1. points.rollingdices)


Peut-être que j'ai fait quelque chose de mal, la conception sage, je ne suis pas encore expérimenté, donc je suis également ouvert pour des conseils.

Meilleures salutations

Répondre

0

L'objectif de votre question n'est pas très claire.

Si vous souhaitez accéder à la présentation de votre vue (la vue contenant votre sous-vue), utilisez 'myView.superview'.

Si vous voulez accéder au UIViewController qui héberge votre UIViewController, utilisez 'myViewController.presentingViewController'.

Enfin, si vous souhaitez accéder à la UIViewController l'hébergement de votre vue, vous devez marcher sur la chaîne de répondeur jusqu'à la première UIViewController ou à la fin de la chaîne (UIView est une sous-classe de UIResponder):

func viewController(forView: UIView) -> UIViewController? { 
    var nr = forView.next 
    while nr != nil && !(nr! is UIViewController) { 
    nr = nr!.next 
    } 
    return nr as? UIViewController 
} 
0

Implémentez la méthode prepareForSegue de votre contrôleur principal.

En fonction du nom de la séquence, vous pouvez créer une référence au contrôleur destination, en gérant la vue conteneur