2016-11-07 5 views
0

Je sais que cette question a été beaucoup posée mais il semble que personne n'ait donné une réponse correcte.Comment renvoyer des données à un contrôleur d'interface dans Watchkit

J'ai un contrôleur d'interface qui a une table. Maintenant, lorsque l'utilisateur sélectionne une ligne, je pousse les informations à un nouveau contrôleur d'interface self.pushController(withName: "DetailInterfaceController", context: context). Maintenant, dans le nouveau DetailInterfaceController, je peux accéder très facilement à mon contexte en awake(withContext context: Any?). Jusqu'ici tout va bien. L'utilisateur est supposé changer quelque chose dans le contexte, puis renvoyer le contexte au contrôleur d'interface précédent. J'utilise le modèle délégué pour le faire. J'ai pensé que je pourrais l'utiliser comme dans l'ios. Mais je rencontre le problème du délégué. Je ne peux pas trouver un moyen de définir le délégué. Watchkit ne vous permet pas de créer simplement une instance d'un contrôleur d'interface (comme je le ferais normalement dans ios).

J'ai essayé:

https://makeapppie.com/2015/05/29/swift-watchkit-introducing-navigation-to-the-apple-watchpart-4-dismissals-and-segues/

et ceci:

http://koreyhinton.com/blog/watchkit-delegates-and-contexts.html

mais j'ai une erreur du compilateur que je ne peux pas downcaster mon contexte.

Je ne peux pas croire qu'il n'y a aucun moyen dans le kit de montre pour définir le délégué! Cela semble absurde. J'utilise beaucoup le modèle délégué dans ios. Est-ce que quelqu'un peut me dire comment cela peut être fait? Ou tout simplement ne peut pas être fait dans Watchkit?

Répondre

0

Vous pouvez utiliser Notifications avec NotificationCenter pour transmettre les données, si les solutions suggérées dans les liens ne fonctionnent pas pour vous.

+0

merci beaucoup @KaraBenNemsi. – michaels

+0

@michaels vous êtes les bienvenus! – KaraBenNemsi