J'essaie de tirer parti de SWIFTUI et de vous combiner pour stocker les paramètres par défaut des utilisateurs pour mon application. En regardant des suggestions dans quelques autres postes, j'ai mis à jour mon code comme vous le voyez ci-dessous. Cependant, je reçois maintenant l'erreur de "méthode d'instance de référencement" Envoyer () "sur" Sujet "exige que les types" Configuration "et" NOID "soient équivalents". Il a été suggéré que je change de "configuration" en annulation dans le déploiement dans le PASTHRUGHSUPJECJECT, mais cela donne alors un crash difficile dans l'application au démarrage - "Erreur fatale: aucun objet observable de type setup.Type trouvé."
Je suis à Un peu de perte ... tous les pointeurs seraient accueillis. p>
3 Réponses :
La méthode qui dit, dans la plupart des codes SWIFTUI, envoie code> nécessite que vous transmettez le type d'entrée du sujet ou une échec de l'échec. Donc, votre
envoyer code> doit passer la configuration code> code>;
passthroughsubject code> est
envoyer () code> ne nécessite pas de paramètre). Ce n'est pas clair que la source de l'accident que vous décrivez est; Nous aurions besoin de voir le code impliqué dans l'accident pour déboguer cela. Je ne l'ai pas reproduit jusqu'à présent. P> p>
SWIFTUI n'utilise pas de L'éditeur est passthroughsubject code>, il utilise un
ObservableObjectPublisher code>. Je suis à peu près sûr que c'est un alias pour
passthroughsubject
ObjectWillChange CODE> pour vous, la meilleure chose à faire est de supprimer votre définition. p>
objetwillchange comme son nom l'indique qu'il doit être envoyé dans
willset code> et non
distset code>, je ne suppose pas qu'il Peu importe beaucoup, mais Apple a changé de
drette code> à
willset code> et je suppose qu'ils ont eu une bonne raison. p>
L'erreur provient du fait que vous avez déclaré votre code> type code> comme Vous devez donc vous transmettre à l'objetWillChange: p> chose importante à remarquer est que vous devez appeler Vous ne définissez jamais quelqueévaliebool, ce bit de code ne sera pas appelé de toute façon. p> Votre configuration devrait ressembler à ce que ceci: p> configuration code>, mais vous appelez objetWillChange avec
void code>.
objetwillchange code> pas dans
pas dans code> mais dans
willset code>: p>
Merci que cela semble avoir fixé des problèmes majeurs en mai. Cela ne fonctionne toujours pas comme je pense, comme le code SWIFTUI où je modifie les valeurs ne semble pas "tirer" le code WILLET ().
Je ne suis pas le meilleur codeur combiné, mais par votre définition de code> Vous indiquez au compilateur que dans votre
Envoyer code> Vous passerez un
Configuration code> instance, comme dans - Je pense - `` Objectwillchange.send ([Insérez votre instance de configuration ici]) `. Je ne vois tout simplement pas dans votre code exactement ce que cette "instance de configuration" est.