Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Swift iOS

    10 juillet 2017 à 5:34:52

    Bonjour,

    je suis le MOOC avec beaucoup d'intérêt et j'ai un petit problème d'ordre technique. J'ai fait la première activité "Gérer les animations".
    On me demande de regarder et noter les codes de 3 autres élèves. Le problème est que le deuxième code proposé est un code d'une application en Python intitulée flask-master et qui n'a rien à voir avec le présent MOOC.
    Je ne peux donc pas corriger cet exercice, j'ai déjà mis des notes aux deux autres.

    Cordialement.. 

    • Partager sur Facebook
    • Partager sur Twitter
      10 juillet 2017 à 11:25:20

      Soit tu mets 0 en expliquant que le fichier est hors sujet soit tu mets la moitié des points si tu ne veux pas léser le candidat et si son commentaire parait de bonne foi !

      A+

      • Partager sur Facebook
      • Partager sur Twitter
      La chute n'est pas un échec, l'échec c'est de rester là où on est tombé!
        13 juillet 2017 à 9:48:50

        Comme Swift est un Language orienté objet peut être que cette personne possédant aucune marque apple à compiler le code sur un windows à l'aide d'un compilateur python? pas impossible tout sa
        • Partager sur Facebook
        • Partager sur Twitter
          23 juillet 2017 à 11:12:36

          Bonjour à tous,

          Petite question en Swift 3 :

          Comment peut-on poser une question à l'utilisateur (avec un bouton oui et un bouton non) mais qui bloque l'exécution du programme jusqu'à la réponse ?

          Actuellement j'utilise un UIAlerteAction, mais le code continu de s'exécuter en attendant la réponse

          Si vous avez une idée :)

          Bonne journée

          A priori j'ai trouvé la réponse... ce n'est pas possible car ça bloque le thread principal

          Si je me trompe, n'hésitez pas à me le dire :)

          -
          Edité par VincentMourareau 24 juillet 2017 à 11:18:48

          • Partager sur Facebook
          • Partager sur Twitter
          Vincent M
            25 juillet 2017 à 20:21:59

            Bonjour,

            A mon avis tu as fait une erreur de design. Je ne comprend pas pourquoi tu souhaites bloquer le programme en attendant la réponse.

            Et effectivement, ce n'est pas possible. Si tu bloques l'exécution du programme qui s'exécute sur le thread principal tu ne pourras pas non plus cliquer sur les boutons.

            Que souhaites-tu faire exactement ?

            • Partager sur Facebook
            • Partager sur Twitter
              26 juillet 2017 à 8:06:30

              Geda a écrit:

              Que souhaites-tu faire exactement ?


              Alors en fait je charge un MapKit qui peut se faire de 3 façons selon le choix dans le menu

              1) un chargement simple avec la position de l'utilisateur

              2) un chargement avec un parcours enregistré

              3) un chargement avec un parcours enregistré ainsi que le modèle de ce parcours (modèle enregistré précédemment)

              lorsque dans le menu l'utilisateur veut ouvrir un parcours existant, si celui-ci dispose d'un modèle, une alerte apparait en demandant si l'on veut charger celui-ci. Dans le cas du "Oui", il faut que le modele soit charger avant le parcours. Or comme je m'y suis pris, le parcours continuer à se charger bien que la question soit ouverte et en attente de réponse.

              Du coup j'ai résolu mon problème en éclatant les different chargement en procédure et j'ai tout mis dans l'exécution en fonction de la réponse plutôt que dans le viewDidLoad et du coup ça fonctionne bien :)

              Mais il y a peut-être mieux à faire

              • Partager sur Facebook
              • Partager sur Twitter
              Vincent M
                26 juillet 2017 à 19:52:01

                Non, il n'y a pas mieux à faire. Si tu souhaites lancer B après A il faut forcément mettre B après A. Refactoriser son code est également une bonne idée.
                • Partager sur Facebook
                • Partager sur Twitter
                  27 juillet 2017 à 10:39:35

                  Bonjour. voila étant débutant sur IOS, je suis actuellement le cours sur apprendre les fondamentaux de Swift, mais je me pose cette questions peut-on dans une boucle for mettre plusieurs variable je m'explique si j'écrit:

                  1
                  2
                  3
                  4
                  5
                  6
                  var nombre = ["1""2""3""4""5"]
                  nombre.count
                  for liste in nombre {
                  print("j'ai \(liste) moutons")
                  }

                  la console m'affiche "j'ai 1 puis 2-3-4-5 moutons" mais si je veux rajouter les noms de chaque moutons à la fin j'ai beau essayer plusieurs technique j'ai soit une erreur soit une affiche entière de mon tableaux :/ j'ai beau créer une nouvelle variable contenant un tableau ou après le code: for liste in nombre je rajoute , name même à la fin sa marche pas j'aimerais bien savoir comment faire, car je pense que c'est intéressant dans une boucle for de mettre plusieurs élément.

                  merci de votre réponse :)

                  • Partager sur Facebook
                  • Partager sur Twitter
                    28 juillet 2017 à 11:51:27

                    @AdrienCY, le cours sur Apprendre les fondamentaux de Swift a maintenant son propre espace de discussion. Je t'invite à le retrouver ici.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      16 novembre 2017 à 18:26:31

                      Bonjour,

                      Merci pour le tutorial, je viens de m'initier à la programmation des apps pour iPad, IPhone, et ça m'est très utile. Je souhaitais par ailleurs savoir si c'est possible de développer les application (écrire le code en entier) sur un iPad et non sur un Mac. Vous pensez que c'est réalisable ?

                      Merci pour vos réponses ! 

                      -
                      Edité par the gg 16 novembre 2017 à 18:27:07

                      • Partager sur Facebook
                      • Partager sur Twitter
                        17 novembre 2017 à 20:40:53

                        Bonjour GG !

                        Tu peux rédiger un peu de code avec un iPad. Mais tu ne pourras pas faire un projet complet d'application iPhone sans un Mac équipé d'Xcode ;).

                        A bientôt !

                        • Partager sur Facebook
                        • Partager sur Twitter
                          30 novembre 2017 à 8:41:43

                          Bonjour,

                          Merci pour votre réponse, de ce fait j'ai cherché un peu sur internet et j'ai remarqué que linux supporte le Xcode, est ce bien le cas ?

                          si c'est le cas, est ce que tout ce qu'on peut réaliser et utiliser comme outils disponible sur iOs, on peut le faire sous linus? 

                          Merci pour votre réponse!

                          • Partager sur Facebook
                          • Partager sur Twitter
                            30 novembre 2017 à 9:27:33

                            Bonjour,

                            Non xcode n’est pas disponible sous Linux. 

                            • Partager sur Facebook
                            • Partager sur Twitter
                              17 avril 2018 à 21:51:21

                              Bonjour, j'ai deux questions à propos de Swift et je ne trouve aucune réponse :

                              1) Quel est le code pour sélectionner aléatoirement un élément dans un tableau ?

                              2) Comment s'assurer que la valeur sélectionné ne soit pas sélectionné une deuxième fois lors du prochain "tirage" ?

                              Merci d'avance pour vos réponses !!

                              • Partager sur Facebook
                              • Partager sur Twitter
                                18 avril 2018 à 9:30:39

                                Salut,

                                Je pense que le plus simple ce serait de mélanger ton tableau et de sélectionner les éléments dans l'ordre par la suite.

                                extension Array {
                                    func shuffle() -> [Element] {
                                        var array = self
                                        for i in 0 ..< self.count {
                                            let rand = Int(arc4random_uniform(UInt32(self.count)))
                                            array.swapAt(i, rand)
                                        }
                                        
                                        return array
                                    }
                                }
                                
                                
                                let intArray = [1 ,2, 3, 4, 5, 6, 7]
                                let stringArray = ["A", "B", "C", "D", "E", "F"]
                                
                                print(intArray.shuffle()) // [5, 1, 6, 3, 2, 7, 4]
                                print(stringArray.shuffle()) // ["B", "C", "A", "F", "D", "E"]



                                • Partager sur Facebook
                                • Partager sur Twitter
                                  14 mai 2018 à 9:29:03

                                  Bonjour,

                                  je rencontre des difficultés sur le cours <<Gerez la navigation et les formulaires en iOS. 

                                  J´ai essayé de tout réalisé comme il faut. 

                                  Quand j´ai le cible dans la viewcontroller de la page et quand dans le storyboard j’ai un control drag du button vers  l’icone de sortie et j’essa de lancer mon application, elle se plante. 

                                  D’ou peut venir cette erreur 

                                  merci pour votre attention 

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  StanMed
                                    14 mai 2018 à 9:43:36

                                    Salut,

                                    Personne n’est magicien tu sais. Tu ne montres ni les Logs du crash ni le code / storyboard, on peut pas deviner. 

                                    Essaie aussi d’ecrire En français parce que la c’est incompréhensible. 

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      1 mars 2019 à 11:17:13

                                      Bonjour !

                                      Dans le chapitre 2, partie slider, le code suivant:

                                      slValue.addGestureRecognizer(gestLongPress)

                                      m'indique (à jsute titre): Use of unresolved identifier 'slValue'

                                      Que dois-je faire ?

                                      Utiliser un let slValue: Int = 0

                                      ?

                                      En vous remerciant !

                                      • Partager sur Facebook
                                      • Partager sur Twitter

                                      JS

                                        23 avril 2020 à 3:21:37

                                        Bonjour,

                                        j'ai la version 11.3.1 de XCode (Swift 5.1)

                                        J'ai commencé la formation gratuite Développez votre première application pour IOS.

                                        J'avance doucement mais sûrement, pour cause .. les versions nouvelles apportent leurs flots de différence.

                                        A la leçon, Ajouter des interfaces graphiques ..3- on n'a toujours pas écrit de Swift... je n'arrive pas ) mettre mes variables dans le controller...!!

                                        Est ce parceque il faut les déclarer différemment? J'ai un petit rond à la place du numéro de la ligne dans le SWIFT! est-normal?

                                        ... 

                                        Vais-je pouvoir continuer? ou les version Xcode sont maintenant  trop avancé pour suivre cette formation.

                                        Encore merci pour le travail de Charles Masson, et si y a encore des gens qui utilise cette formation.. peut on échanger?

                                        ++. (Oui je sais c'est swift 2.. maintenant c'est + ! ) lol

                                        ;)))

                                        Pierre 

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          23 avril 2020 à 17:33:08

                                          Salut, il n’y a aucun changement sur la partie que tu indiques. Fais un ctrl drag
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            24 avril 2020 à 1:08:05

                                            Geda a écrit:

                                            Salut, il n’y a aucun changement sur la partie que tu indiques. Fais un ctrl drag

                                            Merci Geda pour ta prompt réponse... alors s'il n'y a pas eu de changement, c'est que j'ai du laisser une C... dans le potage! car je ne peut pas faire Ctrl Drag ne voyant pas dans outlet ma var mise dans le swift.

                                            Donc :

                                            1: soit j'ai mal déclaré mes Var "tfNombreEntre" avec Outlet avant et le ! qui va bien à la fin de ma ligne dans Swift.. (Ca peut être cela, car je ne vois pas un chiffre de la ligne mais un petit rond. (Pas de message d'erreur pourtant).

                                                     2: soit mon storyBoard ne veut pas le reconnaitre car il n'y a pas dans Outlet ma variable d'enregistrée sous swift. Je cherche encore car je vais bien trouver.

                                            Merci

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              24 avril 2020 à 6:42:39

                                              Clic sur le petit rond et, sans lâcher le clic, glisse sur le UITextField du storyboard. 

                                              en fait le petit rond ça permet de voir quels sont les Outlet qui sont branchés et lesquels ne le sont pas  (quand c’est branché le petit rond est « plein ». En passant la souris dessus ça « highlight » la view correspondante dans le storyboard 

                                              En fait tu as deux solutions pour creer un Outlet. Sois tu fais ce que t’as fait la. (Avec l’étape que j’ai indiqué). Soit tu vas dans le storyboard, tu selectionnes la vue puis tu maintiens ctrl clic jusqu’à ton fichier .swift. 

                                              dans les deux cas tu devrais voir un trait que tu « tires » 

                                              sinon, rien à voir, mais par convention on indique le type de l’outlet, en toute lettre, à la fin de la variable : 

                                              nombreEntreTextfield dans ton cas.

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                24 avril 2020 à 13:18:32

                                                Geda a écrit:

                                                Clic sur le petit rond et, sans lâcher le clic, glisse sur le UITextField du storyboard. 

                                                en fait le petit rond ça permet de voir quels sont les Outlet qui sont branchés et lesquels ne le sont pas  (quand c’est branché le petit rond est « plein ». En passant la souris dessus ça « highlight » la view correspondante dans le storyboard 

                                                En fait tu as deux solutions pour creer un Outlet. Sois tu fais ce que t’as fait la. (Avec l’étape que j’ai indiqué). Soit tu vas dans le storyboard, tu selectionnes la vue puis tu maintiens ctrl clic jusqu’à ton fichier .swift. 

                                                dans les deux cas tu devrais voir un trait que tu « tires » 

                                                sinon, rien à voir, mais par convention on indique le type de l’outlet, en toute lettre, à la fin de la variable : 

                                                nombreEntreTextfield dans ton cas.

                                                Merci Geda,

                                                J'essaye de suite après ce message ta solution du dessus.

                                                Pour le petit rond j'avais compris, après mon message. merci de m'avoir prévenu.

                                                Pour la deuxième proposition je ne pense pas pouvoir le faire car je n'ai pas le signe de deux cercles en haut à droite entre le plus à gauche pour les Vues et les deux flèches de sens opposé. J'installe ma nouvelle version.. je passe de Xcode 11.4.1 qui va remplacer 11.3.1 (11C504) et je te dis après si je l'ai toujours pas ce sygle.


                                                Je te dis dès que les deux fonctionne.

                                                Sinon je vais étudier de suite mon écriture non conventionnelle pour corriger le tir.

                                                Encore merci pour ton aide rapide

                                                Pierre

                                                -
                                                Edité par Pierre102 24 avril 2020 à 13:27:12

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  24 avril 2020 à 14:54:55

                                                  Ça par contre ça a changé. Le bouton a été déplacé en quelque sorte.

                                                  En haut du storyboard, a droite de l'icône jaune de warning, t'as un bouton avec plein de trait horizontal. Tu cliques dessus et tu sélectionnes "assistant".

                                                  Vu que l'assistant gère mal l'héritage, tu peux aussi utiliser le bouton à droite de ce dernier. ça va t'ouvrir une deuxième fenêtre en parallèle (que tu peux fermer en faisant La Croix qui est quelque part en haut) et sélectionner manuellement le fichier (via le fil d'ariane en haut)

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    25 avril 2020 à 0:39:35

                                                    Geda a écrit:

                                                    Ça par contre ça a changé. Le bouton a été déplacé en quelque sorte.

                                                    En haut du storyboard, a droite de l'icône jaune de warning, t'as un bouton avec plein de trait horizontal. Tu cliques dessus et tu sélectionnes "assistant".

                                                    Vu que l'assistant gère mal l'héritage, tu peux aussi utiliser le bouton à droite de ce dernier. ça va t'ouvrir une deuxième fenêtre en parallèle (que tu peux fermer en faisant La Croix qui est quelque part en haut) et sélectionner manuellement le fichier (via le fil d'ariane en haut)


                                                    Merci beaucoup Geda, ton aide m'est précieux!!!!! Aussi je n'arrive pas à m'expliquer, et ceci est de ma faute.

                                                    Dans la fenêtre tout à droite, il y a des Outlet Collection, mais pas mon fichier crée dans le .swift. J'ai bien le fil d'Ariane, mais pas de fichier ou sous fichier à relier avec mes Vues : bouton and co. Voir photo ci dessous.

                                                    Autre nouveau problème, pour mes var de couleur red.., j'ai un beug.. et je ne le comprends pas?

                                                    Aurais-tu un autre forum en Français très actif sur Xcode, que je puisse t’embêter qu'un minimum?

                                                    Mais vraiment! encore merci de ta participation pour m'enlever ces épines du pieds.. Grande Geda!

                                                    Pierre

                                                    -
                                                    Edité par Pierre102 25 avril 2020 à 2:15:09

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      25 avril 2020 à 4:19:02

                                                      Le premier screen n’est pas exploitable. Il n’y a rien à faire. Pour le second screen, tu devrais pouvoir cliquer sur le rond à gauche de @IBAction et le glisser jusqu’à ta vue dans la partie droite. Soit dans le « Canvas » soit dans la hiérarchie. Ou. Inversement, ctrl clic sur la vue dans la partie droite et glisser dans la partie gauche. Quand je parle de partie droite je parle de la colonne où il y a « Exercice Scène » en haut, avec l’icône rouge (la hiérarchie). La colonne tout à droite ne sert à rien (enfin si, pour supprimer des liens que tu aurais pu faire mais pour l’instant il n’y en a pas).

                                                      Xcode te génère deux types d’erreurs : les erreurs qu’il arrive à gérer lui même et les autres. Ici tu vois l’icône rouge c’est un rond avec un point blanc au milieu. Ça veut dire qu’il arrive à gérer tout seul ! Clic dessus et il te proposera quelque chose qui réglera le problème. Le problème en l’occurrence c’est que le langage a changé. redColor() n’existe plus il faut faire .red

                                                      Non je ne connais pas d’autres forums

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        25 avril 2020 à 16:48:31

                                                        Geda a écrit:

                                                        Le premier screen n’est pas exploitable. Il n’y a rien à faire. Pour le second screen, tu devrais pouvoir cliquer sur le rond à gauche de @IBAction et le glisser jusqu’à ta vue dans la partie droite. Soit dans le « Canvas » soit dans la hiérarchie. Ou. Inversement, ctrl clic sur la vue dans la partie droite et glisser dans la partie gauche. Quand je parle de partie droite je parle de la colonne où il y a « Exercice Scène » en haut, avec l’icône rouge (la hiérarchie). La colonne tout à droite ne sert à rien (enfin si, pour supprimer des liens que tu aurais pu faire mais pour l’instant il n’y en a pas).

                                                        Xcode te génère deux types d’erreurs : les erreurs qu’il arrive à gérer lui même et les autres. Ici tu vois l’icône rouge c’est un rond avec un point blanc au milieu. Ça veut dire qu’il arrive à gérer tout seul ! Clic dessus et il te proposera quelque chose qui réglera le problème. Le problème en l’occurrence c’est que le langage a changé. redColor() n’existe plus il faut faire .red

                                                        Non je ne connais pas d’autres forums

                                                        Grazie mille, j'étudie cela et te donne des nouvelles de mon avancement quoi qui se passe.

                                                        Buon fine settimana



                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          1 mai 2020 à 15:14:18

                                                          Geda a écrit:

                                                          Le premier screen n’est pas exploitable. Il n’y a rien à faire....

                                                          Bonjour Geda, j'ai bien progresser en trois jours, avec l'aide aussi de  d'autres Tuto videos...Paul, Chriss.. les stars de Californie..

                                                          J'ai un beug juste avant de finir,

                                                          j'ai essayé de trouver la raison, j'y suis dessus depuis 5 jours..

                                                          Pourrais tu me donner une piste à investir?

                                                          Merci à toi.. je suis débutant, maintenant Xcode je maitrise davantage...

                                                          //

                                                          //ViewController.swift

                                                          //Open Class Room 1.1.0

                                                          //

                                                          //Created by Pierre Blineau on 30/04/2020.

                                                          //Copyright © 2020 Pierre Blineau EFI Application. All rights reserved.

                                                          //

                                                          import UIKit

                                                          classViewController: UIViewController, UITextFieldDelegate {

                                                          // Ici débute les Outlets

                                                          @IBOutletweakvartfNombreEntre: UITextField!

                                                          @IBOutletweakvarbFin: UIButton!

                                                          // Les variables débute ici

                                                          varmodeAuto = false

                                                          overridefuncviewDidLoad() {

                                                          super.viewDidLoad()

                                                          print("Bonsoir Paris !")

                                                          // Ne rien mettre en dessous de cet affichage

                                                          // Affiche dans le cadre noir ci-dessous pour prouver que ca marchesans beug!

                                                          tfNombreEntre.delegate = self

                                                          }

                                                          overridefuncdidReceiveMemoryWarning() {

                                                          super.didReceiveMemoryWarning()

                                                          //Dispose of any ressources that can be recreated.

                                                          }

                                                          // Ici débute les Actions

                                                          @IBAction func clicSurFin(_ sender: UIButton) {

                                                          //On vérifie que le texte entré par l'utilisateur n'est pas nul

                                                          if let resultat = tfNombreEntre.text, resultat != "" {

                                                          //On regarde si le résultat est 8

                                                          if Int(resultat) == 8 {

                                                          alert("Bravo", message: "4 + 4 = 8\nC'est une bonne réponse")

                                                          }

                                                          else {

                                                          alert("Faux", message: "Ce n'est pas la bonne réponse, réessayez !")

                                                          }

                                                          }

                                                          else {

                                                          alert("Champ vide", message: "Veuillez entrer une valeur")

                                                          }

                                                          }

                                                          @IBAction func autoOnOff(_ sender: UISwitch) {

                                                          modeAuto = sender.isOn

                                                          //On attribue à modeAuto la valeur du UISwitch

                                                          bFin.isHidden = modeAuto

                                                          //Cache la vue

                                                          }

                                                          @IBAction func textModifie(_ sender: UITextField) {

                                                          ifmodeAuto {

                                                          //On vérifie que le texte entré par l'utilisateur n'est pas nul

                                                          if let resultat = sender.text, resultat != "" {

                                                          //On regarde si le résultat est 8

                                                          if Int(resultat) == 8 {

                                                          alert("Bravo", message: "4 + 4 = 8\nC'est une bonne réponse")

                                                          }

                                                          }

                                                          }

                                                          }

                                                          func textFieldShouldReturn(_ textField: UITextField) -> Bool {

                                                          }

                                                          }

                                                          func alert(_ title: String, message: String) {

                                                          let alert = UIAlertController(title: title, message: message, preferredStyle: .alert)

                                                          let ok = UIAlertAction(title: "Ok", style: UIAlertAction.Style.cancel, handler: nil)

                                                          alert.addAction(ok)

                                                          self.present(alert, animated: true, completion: nil)

                                                          // Pour afficher un Popup basique et minable sur fond blanc, avec un titre et un message!

                                                          }

                                                          func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {

                                                          self.view.endEditing(true)

                                                          // Pour cacher le clavier, en appuyant en dehors de celui-ci n'importe où sur l'écran.

                                                          }

                                                          MMerci à toi

                                                          A bientôt

                                                          Pierre

                                                          -
                                                          Edité par Pierre102 1 mai 2020 à 15:19:57

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            2 mai 2020 à 4:39:51

                                                            Je te conseille de commencer par indenter correctement ton code parce que c’est illisible et incompréhensible la

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                              2 mai 2020 à 14:32:24

                                                              Geda a écrit:

                                                              Je te conseille de commencer par indenter correctement ton code parce que c’est illisible et incompréhensible la.

                                                              Pourtant j'ai mis du texte?

                                                              Je suis débutant en Swift et donc pourrais tu me montrer deux exemples de modification à faire, pour indenter comme un pro?

                                                              Merci à toi si tu peux le faire et si cela va dans ta direction d'échange.

                                                              Bon Week-end

                                                              PIerre 



                                                              • Partager sur Facebook
                                                              • Partager sur Twitter

                                                              MOOC Swift iOS

                                                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                              • Editeur
                                                              • Markdown