Convertire un String en Int et le retourner dans TexField

Bonjour,

Lors d’une insomnie je me suis mit en tête de me coder un petit jeux de plus et moins avec swiftUi (un simple tp de swift basique me direz-vous)

Sauf que lorsque je veux convertir mon String en Int venant de mon TextField je ne parviens pas à mettre à jour ma classe et je coince …

Je vous partage ici mon code en espérant que j’ai été assez clair.

D’avance un grand merci !

Je viens d’avoir un flash ! Ce n’est pas parce que je retourne une constante avec le guard let par hasard ?

C’est drôlement compliqué ton truc … Essaye avec :

if let valeur = Int(laString) {
  // Faire quelque chose avec la valeur
  // ..
}

Je viens d’essayer et en faite j’ai l’impression que mon problème vient dans la saisie dans le TextField et non de ma propriété calculée …

Quand je saisis du texte en référençant la classe avec « $ » rien ne ce met à jour (classe bien déclarée en oberservebleObject et la variable déclarée avec @published) alors que si je met un string déclaré hors de la classe avec le @State classique là mon texte est bien mit à jour en temps réel.

Alors j’ai un peu plancher sur le sujet et en effet le problème vient bien de ma classe qui ne ce met pas à jour pour je ne sais quel raison, ma seul solution a été de créer une fonction dans ma classe qui retourne un string en prenant pour paramètre un string extérieur à la classe

image
image

Ce n’est pas ultra sexy mais ça marche du coup je vais m’en contenter pour l’instant je pense