Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Une application iPhone avec le modèle MVC

    18 octobre 2019 à 13:50:03

    En alternative tu peux toujours faire UIImage(named: String). Je t’avoue que je ne sais pas pourquoi il te le propose pas. parfois Xcode est un peu à la ramasse...
    • Partager sur Facebook
    • Partager sur Twitter
      18 octobre 2019 à 14:07:26

      Du coup je me suis penché dessus c'est dommage.
      • Partager sur Facebook
      • Partager sur Twitter
        30 novembre 2019 à 19:14:22

        Bonjour à tous :),

        Je rencontre un problème que d'autres ont rencontrés avant moi,

        le fameux message :

        Thread 1: Fatal error: Index out of range

        J'ai pourtant essayé les solutions que vous aviez proposé aux anciennes personnes rencontrant ce même problème, mais ça ne m'a pas aidé.

        J'ai pourtant suivi les instructions à la lettre, pouvez-vous me dire où est-ce que j'ai fait une boulette svp ? :-°

        À votre avis ça peut venir de quoi ?

        • Partager sur Facebook
        • Partager sur Twitter
          30 novembre 2019 à 20:40:06

          Dans ta méthode refresh tu fais get sur questionManager. Juste après tu postes une notification qui va appeler questionLoaded. Le problème, j’imagine, c’est que ton get est asynchrone. Donc quand tu appelles questionLoaded tes questions ne sont pas encore chargés.

          Conclusion : met le post dans le completionHandler du get

          IndexOutOfBounds signifie que tu essaies d’accéder à un élément du tableau qui n’existe pas.

          -
          Edité par Geda 30 novembre 2019 à 20:40:57

          • Partager sur Facebook
          • Partager sur Twitter
            3 décembre 2019 à 11:39:10

            Bonjour à tous,

            J'ai un petit soucis avec le cours que je trouve parfaitement expliqué et vraiment ludique

            une erreur de compilation me bloque

            J'ai eu beau chercher en long en large et en travers sur le net je n'ai rien trouvé de très clair concernant cette erreur.

            Je suis xCode 11.2.1

            Merci de m'indiquer la marche à suivre

            • Partager sur Facebook
            • Partager sur Twitter
              3 décembre 2019 à 13:23:09

              Faudrait voir les constructeurs de la classe Question. J’ai l’impression qu’il n’y en a pas qui prennent ces deux parametres

              • Partager sur Facebook
              • Partager sur Twitter
                3 décembre 2019 à 15:11:12

                Pourtant comme précisé dans le cours j'ai bien dans le fichier Question.swift

                class Question {
                    var title = ""
                    var isCorrect = false
                }


                Geda a écrit:

                Faudrait voir les constructeurs de la classe Question. J’ai l’impression qu’il n’y en a pas qui prennent ces deux parametres



                -
                Edité par NicolasKulpinski 3 décembre 2019 à 15:12:04

                • Partager sur Facebook
                • Partager sur Twitter
                  3 décembre 2019 à 19:44:41

                  Effectivement. Et si on se base sur le underscore rouge on peut comprendre que c’est le constructeur String qui n’existe pas. Pourtant ça me parle. T’as vérifié qu’il existait bien ? C’est l’auto complétion qui te la géneré ?

                  ÉDIT :

                  Effectivement quand je regarde la doc je ne vois pas ce constructeur :

                  https://developer.apple.com/documentation/swift/string

                  -
                  Edité par Geda 3 décembre 2019 à 19:48:06

                  • Partager sur Facebook
                  • Partager sur Twitter
                    4 décembre 2019 à 17:54:43

                    Merci pour ces pistes mais le constructeur String existe bien puisqu'il provient de ce fichier créé par Ambroise.

                    QuestionManager.swift

                    Je n'ai rien modifié dans ce fichier mais je me demande si quelque chose n'a pas changé comme ça a été le cas dans le passé comme indiqué dans le post de 2017

                    Je n'ai pense pas avoir les compétences suffisantes pour régler ce problème.

                    Merci pour ton aide en tout cas

                    giantwow a écrit:

                    Salut !

                    En effet, le cours n'est pas encore mis a jour pour Swift 4 !

                    En attendant, tu peux remplacer la ligne d'initialisation de la variable options de la sorte :

                    let options: [NSAttributedString.DocumentReadingOptionKey: Any] = [
                        NSAttributedString.DocumentReadingOptionKey.documentType: NSAttributedString.DocumentType.html,
                        NSAttributedString.DocumentReadingOptionKey.characterEncoding: String.Encoding.utf8.rawValue
                    ]
                    

                    Voila !

                    • Partager sur Facebook
                    • Partager sur Twitter
                      4 décembre 2019 à 19:14:33

                      Bon, j'ai fait le test. Je reproduis bien le problème. C'est effectivement que tu n'as pas de constructeur avec ces paramètres dans ta classe Question

                      Du coup utilise ça :

                      class Question {
                          var title: String
                          var isCorrect: Bool
                          
                          init(title: String, isCorrect: Bool) {
                              self.title = title
                              self.isCorrect = isCorrect
                          }
                          
                          convenience init() {
                              self.init(title: "", isCorrect: false)
                          }
                      }
                      
                      • Partager sur Facebook
                      • Partager sur Twitter
                        4 décembre 2019 à 20:11:27

                        Super

                        J’avais essayé l’initialisation mais sans aller jusqu’à convenience init()

                        Merci beaucoup

                        -
                        Edité par NicolasKulpinski 4 décembre 2019 à 20:11:46

                        • Partager sur Facebook
                        • Partager sur Twitter
                          31 janvier 2020 à 12:19:56

                          bonjour,

                          je suit vos cours assidûment dans un projet de reconversion et bravo pour votre travail!

                          je suis bloqué à l'exercice du chapitre 2 de la partie 2. je doit créer la fonction "answerCurrentQuestion". je n'est pas d'erreur dans Xcode et la fonction fonctionne parfaitement dans le Playground. pourtant, la sandbox me dit que mon code ne fonctionne pas. pourquoi? 

                          Bonne journée a vous.

                          class Game{
                              var score: Int = 0
                              var questions = [Question]()
                              var state: State = .ongoing
                              private var currentIndex: Int = 0
                              public var currentQuestion: Question{
                                  return questions[currentIndex]
                              }
                              
                              enum State{
                                  case ongoing, over
                              }
                              
                              func answerCurrentQuestion(with answer: Bool){
                                  if Question().isCorrect == answer{
                                      score += 1
                                  }
                              }
                          }

                          EDIT:

                          je pense qu'il y a une coquille dans le system de vérification car en passant la valeur par défaut de "isCorrect" a "true", la sandbox me dit que mon code est bon. est-ce un bug ou mon code est-il faux?

                          -
                          Edité par MickaelRuzel 31 janvier 2020 à 12:56:09

                          • Partager sur Facebook
                          • Partager sur Twitter
                            13 avril 2020 à 18:09:31

                            Bonjour,

                            J'ai un problème similaire à celui de LoupBina1. Quand je lance le simulateur, les icones n'apparaissent pas. L'erreur qui s'affiche est : "Could not load the "icon error" referenced form a nib". Pourtant les images sont bien dans l'asset catalog, la case Target est cochée et les connecteurs sont actifs. Voici la partie du code en question, dans la classe QuestionView:

                                private func setStyle(_ style: Style) {
                                    switch style {
                                    case .correct:
                                        icon.image = UIImage(named: "Icon Correct")
                                    case .incorrect:
                                        icon.image = UIImage(named: "Icon Error")}
                                        

                            Merci pour votre aide!!

                            LoupBina1 a écrit:

                            D'accord donc mes images sont bien dans ce dossier mais dans le cours, Ambroise marque bien le nom de l'image comme ça :

                            icon.image = Icon Error

                            et il y a le petit icône de l'image devant, sauf que chez moi ça me le suggère pas et du coup ça ne la trouve pas.




                            • Partager sur Facebook
                            • Partager sur Twitter
                              13 avril 2020 à 21:34:28

                              Camille Chanod : par simplicities utilise « imageLiteral » comme ça tu pourras sélectionner ton image directement ça seras plus simple. 

                              icine.image = imageLiteral

                              xcode t’afficheras une pop up et tu pourra sélectionner l’image voulue directement. Il arrive que Xcode est du mal avec l’auto-complétion et du coup une petite faute de frappe ou syntaxe et rien ne fonctionne.  

                              • Partager sur Facebook
                              • Partager sur Twitter
                                11 juillet 2020 à 19:11:48

                                Hello à tous et toutes !

                                Je rencontre un souci dans le chapitre "Sous-classez UIView" lorsque je passe en mode assistant je n'ai pas la possibilité de switcher vers mon fichier "QuestionView" je suis obligatoirement avec "ViewController.swift". 

                                Problème résolu à force de chercher un peu partout. Pour ceux à qui ça arriverai en fait il suffit de cliquer sur "Add editor on right" (icône en haut à droite) et de glisser déposer "QuestionView" dans l'onglet de gauche. 

                                Bisous la team :D

                                -
                                Edité par Hatsuumomo 11 juillet 2020 à 19:44:34

                                • Partager sur Facebook
                                • Partager sur Twitter

                                MOOC Une application iPhone avec le modèle MVC

                                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                • Editeur
                                • Markdown