Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Créez une application responsive

    18 octobre 2017 à 16:22:40

    Bonjour à tous,

    Le cours sur Créez une application responsive pour l'iPhone et l'iPad est disponible !

    Ce cours fait suite aux quatre précédents sur Swift et le développement iOS :

    1. Introduction à iOS, plongez dans le développement mobile

    2. Apprenez les fondamentaux de Swift

    3. Approfondissez Swift avec la programmation orientée objet

    4. Développez une application avec le modèle MVC

    Dans ce cours, vous allez apprendre à adapter votre interface aux différentes tailles d’écran des appareils iOS. Vous allez découvrir la puissance d’AutoLayout et des catégories de tailles pour que votre interface s’adapte ou même se transforme en fonction de la taille d’écran.

    Sur ce forum, je répondrais le plus régulièrement possible à vos questions. N'hésitez pas, il n'existe pas de questions bêtes. Si vous vous les posez, vous n'êtes vraisemblablement pas les seuls !

    Bon cours et bon courage ;) !

    A bientôt !

    • Partager sur Facebook
    • Partager sur Twitter
      23 octobre 2017 à 20:39:37

      Bonjour,

      Je viens de finir le cours "Créez une application responsive pour l'Iphone et l'Ipad" depuis maintenant 4 jours et on ne me propose toujours pas de corrections. Je suis un peu embêter, d'autant plus qu'il semblerait que personne n'ait, pour l'instant, corriger mes copies. Est-ce normal, ou un bug du système? Sinon, existe-t-il un moyen d'avoir plus rapidement les résultats?

      A part ça, le cours était super comme les autres!!!! J'ai hâte de voir le prochain!

      A bientôt,

      Steph

      • Partager sur Facebook
      • Partager sur Twitter
        25 octobre 2017 à 11:34:03

        Bonjour,

        C'est effectivement un bug qui a été résolu. Les corrections devraient arriver.

        Merci beaucoup pour le compliment ;) !

        A bientôt

        -
        Edité par AmbroiseCollon 25 octobre 2017 à 11:34:19

        • Partager sur Facebook
        • Partager sur Twitter
          3 novembre 2017 à 20:02:13

          .

          -
          Edité par RomainBarbaray1 5 novembre 2017 à 23:44:15

          • Partager sur Facebook
          • Partager sur Twitter
            13 novembre 2017 à 13:17:31

            Bonjour,

            petit soucis sur la partie responsive de mon coté que je n'arrive pas a comprendre. Quand il est question de faire des variations en mode paysage, tout est trés beau ... sauf pour l'iphone X qui ressemble plus a rien :-( l'application openQuizz sous iphone X a sa questionView completement en dehors d el'écran, et le bouton qui ressemble plus a rien ... une idée de la raison a cela ?

            merci,

            • Partager sur Facebook
            • Partager sur Twitter
              13 novembre 2017 à 15:21:15

              Bonjour Rémi et merci pour ton retour !

              Le cours prends en charge l'iPhone X. Notamment avec le chapitre sur la zone protégée. Tu as peut-être fait une erreur dans tes contraintes, est-ce que tu peux nous donner plus d'informations ? Une impression d'écran ? Où en es tu dans le cours ? Qu'as tu essayé de faire ?

              Merci !

              • Partager sur Facebook
              • Partager sur Twitter
                7 décembre 2017 à 16:27:46

                Bonjour et désolé de ma réponse tardive.

                Il semblerait que mon soucis vient plus du fait que j'utilise un MacOSX en mode virtualité. Enfin je pense, l'affiche n'est pas bonne, mais si j'attend un peu et que je bascule en landscape puis en portrait et vis et versa, l'affichage fini par être bon.

                merci encore pour tous ces cours,

                • Partager sur Facebook
                • Partager sur Twitter
                  9 décembre 2017 à 16:32:19

                  Bonjour à tous, 

                  Excusez-moi d'avance parce que je n'ai pas trouvé le sujet sur le MOOC "Développez une application iPhone avec le modèle MVC" car mon problème concerne ce cours.

                  Je suis récemment passé à Xcode 9 (9.2 précisément) et l'application OpenQuizz que j'ai développé en suivant le cours sur le modèle MVC rencontre un problème qui empêche la compilation dans le fichier QuestionManager.swift (celui qui est donné dans le cours qui effectue les requêtes réseaux) précisément sur ce bout de code :

                  guard let attributedString = try? NSAttributedString(data: data, options: options, documentAttributes: nil) else {
                      return nil
                  }

                  L'erreur que m'affiche Xcode est la suivante :

                  Cannot convert value of type '[String : Any]' to expected argument type '[NSAttributedString.DocumentReadingOptionKey : Any]'

                  Je pense que cette erreur est certainement due au passage à Swift 4 (j'ai effectué la conversion sur le document) qui a dû changé changé quelques règles au niveau des types dans ce bout de code, mais je n'ai pas vraiment trouvé de solution après quelques recherches.

                  En espérant que vous puissiez m'aider, je vous souhaite une bonne journée.



                  -
                  Edité par gouloun70 9 décembre 2017 à 16:34:01

                  • Partager sur Facebook
                  • Partager sur Twitter
                    11 décembre 2017 à 10:02:01

                    Quel lien as tu suivi pour obtenir le fichier ? A quel endroit du cours ? Normalement, je l'avais mis à jour pour Swift 4. Merci !

                    • Partager sur Facebook
                    • Partager sur Twitter
                      15 décembre 2017 à 10:35:08

                      Bonjour, 

                      Pour obtenir le fichier j'ai utilisé le lien du cours c'est à dire : https://s3-eu-west-1.amazonaws.com/static.oc-static.com/prod/courses/files/Parcours+DA+iOS/Cours+4+-+MVC/QuestionManager.swift

                      Dans la partie "Téléchargez les questions" du grand II du cours. 

                      La dernière fois que je l'ai téléchargé c'était le 9 décembre pour le remplacer dans mon projet Xcode et l'erreur était toujours présente ; je vais réessayer aujourd'hui. 

                      Edit[15/12]: Étrangement j'ai réessayé avec le fichier en ligne (en remplaçant son contenu sur Xcode) et la compilation a fonctionné alors que je n'ai pas vu de différence entre le code que j'ai téléchargé et celui que j'avais déjà. Donc le problème est réglé visiblement ;)

                      -
                      Edité par gouloun70 15 décembre 2017 à 10:40:10

                      • Partager sur Facebook
                      • Partager sur Twitter
                        15 décembre 2017 à 12:45:04

                        Etrange étant donné que le mise à jour du fichier a eu lieu bien avant le 9 décembre. Mais si ça marche finalement, tant mieux !
                        • Partager sur Facebook
                        • Partager sur Twitter
                          18 décembre 2018 à 22:57:17

                          Bonjour,

                          Tout d'abord, merci pour les excellents cours de Swift.

                          Problème résolu.

                          -
                          Edité par NathanBienvenu 22 décembre 2018 à 11:34:18

                          • Partager sur Facebook
                          • Partager sur Twitter
                            2 septembre 2019 à 17:52:13

                            Bonjour,

                            Je suis à l'exercice de ComparImage à renvoyer mais j'ai passé presque une heure voir plus à chercher une solution pour l'autolayout en Iphone SE et 4S. Il y a 3 images qui suivent, la première en Iphone 8, la deuxième en Iphone SE et la troisième en iPhone 4S.

                            Je ne comprends pas pourquoi les images changent alors que j'ai mis des contraintes et des alignements. Elles restent carré mais jamais les deux à la même taille lorsque que je change de Device.

                            Merci d'avance pour votre aide ! 

                            Iphone 8Iphone SEIphone 4S

                            • Partager sur Facebook
                            • Partager sur Twitter
                              4 septembre 2019 à 11:58:54

                              Salut, c'est dur à dire sans pouvoir regarder les contraintes de chaque élément. Si tu cliques sur le bouton rouge à droite de "View Controller Scene" ça te dit quoi ?

                              • Partager sur Facebook
                              • Partager sur Twitter
                                4 septembre 2019 à 16:16:30

                                Salut, 

                                Oui voila le screen ! merci ! 

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  4 septembre 2019 à 18:37:35

                                  on peut voir que ça te donne que des contraintes sur l’axe vertical (top, bottom, height et aussi width avec le ratio) donc ton téléphone est trop petit pour avoir ces espaces et des images de 250 par 250.

                                  Ce que je ferais, c’est supprimer TOUTES les contraintes sur tes deux images. Les mettre dans une stackview . (en bas à droite du storyboard, t’as 4 boutons. C’est le quatrième en partant de la droite). En faisant ça, ça va supprimer de facto toutes les contraintes de toute façon, sauf celles sur la largeur et la hauteur. Ensuite tu mets tes contraintes top, left, right, bottom sur ta stackview. Et dans l’inspecteur tu joues sur les deux champs de distribution et le spacing pour avoir le rendu que tu veux.

                                  De manière générale, les contraintes c’est assez long et chiant. Les stackviews sont tes meilleurs amis. Ca fait gagner un temps de malade.

                                  Si tu veux t’en passer : Supprime les contraintes en hauteur (déjà ça sert à rien puisque t’as witdth et le ratio). Sur la première tu mets witdth à 250 et ton ratio a 1:1. Sur la seconde tu met la witdth egale à la première et la hauteur aussi (comme ça tu n’as qu’une contrainte à changer pour affecter les deux images). Ensuite tu reviens sur ton width 250 et tu changes le égale en inférieur ou égale. (Et la j’espère que ça marche, je fais ça de tête peut y avoir des erreurs !)

                                  -
                                  Edité par Geda 4 septembre 2019 à 18:43:33

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    5 septembre 2019 à 2:53:56

                                    Merci je vais essayer mais merci beaucoup ! Je ne voulais pas utiliser de stackviews car dans le cours il disait que ce serait pour plus tard mais je vais appliquer cette solution ! merci pour la réactivité et la précision !
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      22 octobre 2019 à 15:48:39

                                      Hello, je poursuis mon cursus sur le développement iOS et dans l'exercice dont Loic parle quand je DL le projet et l'exécute, ça me met une erreur disant que la version swift 3 n'est plus supporté. 

                                      Il y a moyen de régler ce petit soucis pour que je fasse les tests sur iPhone ou simulateur ?

                                      Et j'ai aussi le même soucis pour l'iPhone SE et 4S, sachant qu'on est pas sensé utiliser les stackviews dans ce cours, il y a pas d'autre solution ?

                                      -
                                      Edité par LoupBina1 22 octobre 2019 à 16:18:07

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        22 octobre 2019 à 18:46:52

                                        Il y a sûrement un moyen mais il va falloir être plus explicite car je vois pas du tout de ce dont il s’agit ! À quel niveau se situe l’erreur ? Quel est l’intégralité du message ? Screen ?

                                        L’autre solution c’est ce que que j’ai dit dans le dernier paragraphe.

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          23 octobre 2019 à 10:03:31

                                          Merci de ta réponse Geda, pour l'erreur en question la voici en image : 

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            23 octobre 2019 à 10:30:20

                                            Ok.

                                            Dans l'explorateur de fichier à gauche. Clique sur le nom du projet tout en haut. Selectionne ensuite Build Settings. Et dans la catégorie Swift Language Version met quelque chose qui est supporté.

                                            (Il est franchement pas à jour ce cours n'empêche... Ça commence à être ridicule)

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              23 octobre 2019 à 11:22:00

                                              D'accord merci, du coup problème réglé même avec les autres erreurs qui sont venu après, du coup j'ai fixé tout ça :)

                                              Sinon pour ce que tu as dit plus tôt je sais pas si j'm'y suis mal pris mais ça donne pas de responsive correct : 

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                23 octobre 2019 à 23:12:55

                                                Je vois... Pour l’image du bas c’est pas tout à fait ce que j’ai dit mais bon. Le problème est effectivement sur la hauteur. Du coup, en remplaçant mon indication sur le width <= 250 par un height <= 250 ça donne quoi ? En gardant le ratio à 1 et en donnant à la seconde image une hauteur et une largeur égale à la première image (ne pas fixer à 250 en fait. Ctrl - drag sur la première image)

                                                C’est quand même vachement plus simple d’utiliser une stackview !

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  24 octobre 2019 à 10:25:03

                                                  Si j'ai bien fais la chose, ça ne bouge pas :

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    24 octobre 2019 à 11:06:04

                                                    EDIT : T'as pas de contrainte Bottom sur l'image du bas. Il faut bien specifier ses contraintes de haut en bas (ou de bas en haut) pour avoir un layout qui s'adapte.
                                                    _____________________________

                                                    Oui j'étais un peu con hier soir. Vu que le ratio il est à 1, que ce soit la largeur ou la hauteur qui soit fixe, ça change pas grand chose.
                                                    J'ai fait le test, chez moi ça marche.

                                                    Image du haut : 

                                                     
                                                    Image du bas : 
                                                    Le bouton il est en 20 a gauche, 20 en bas, 20 à droite

                                                    -
                                                    Edité par Geda 24 octobre 2019 à 11:08:04

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      24 octobre 2019 à 11:52:41

                                                      Ca marche également chez moi avec la contrainte top du bouton du bas, ça à tout mis correctement. 

                                                      Merci pour ton aide Geda :)

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        20 avril 2020 à 12:54:09

                                                        Je fait comme ca.
                                                        <?php $width_board = (taille de l’élément en px);?>
                                                        <style>
                                                        body {
                                                            position: fixed;
                                                            padding: 0px;
                                                            margin: 0px;
                                                            width: 100%;
                                                            height: 100%;
                                                        }
                                                        .board {
                                                        margin:auto;
                                                        position: relative;
                                                        height: 100%;
                                                        width: max-content;
                                                        background-image: url("image.png");
                                                        }
                                                        </style>
                                                        <body>
                                                        <div id='corp'><img src="image.png" width="<?php echo $width_board."px";?>" height="100%"></div>
                                                        </body>
                                                        <script>
                                                        zoom = ($(window).width() / <?php echo $width_board;?> ) * 100;
                                                        if (zoom > 100) {zoom = 100;}
                                                        document.getElementById('corp').style.zoom= zoom + "%";
                                                        </script>

                                                        Ça marche , mais vous en pensez quoi ?
                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          20 avril 2020 à 13:10:36

                                                          Rien. Je comprends pas pourquoi tu postes du php, du html, du css et du JS. 

                                                          Si, je pense que c’est tres crade et qu’il ne faut jamais faire ça (palme d’or pour le php dans la balise script). Mais je vois pas le rapport avec la choucroute  

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            21 avril 2020 à 4:54:26

                                                            Le php c'est parque je l'utilise pour le reste , c'est pas de ça que je parle ici . Remplace ma variable php par une valeur fix , dans mon cas elle change donc ..... voila .
                                                            Ma question était juste sur ça >>


                                                            <div id='corp'><img src="image.png" width="( Taille de l’élément ,(php ou pas !!!) )" height="100%"></div>

                                                            <script>
                                                            zoom = ($(window).width() / ( Taille de l’élément ,(php ou pas !!!) ) * 100;
                                                            if (zoom > 100) {zoom = 100;}
                                                            document.getElementById('corp').style.zoom= zoom + "%";
                                                            </script>

                                                            Le sujet c'est SITE RESPONSIVE , non ? L'utilisation de variables de php dans du javascript, je crois que je ne suis pas le seul à faire ça .... Si tu connais une autre solution, plus propre, pour passer une variable php dans js , je suis preneur . 

                                                            Je suis ne suis pas un pro , je suis autodidacte, j'ai commencé la prog il y a 40ans, sur un VIC 20 (Commodore) en Basic (8Ko de RAM + 8Ko de ROM pour Basic intégré, avec sauvegarde sur cassette audio)

                                                            -
                                                            Edité par ChristianTrehand 21 avril 2020 à 5:57:55

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                              21 avril 2020 à 5:57:02

                                                              Non. Le sujet Cest “application responsive”. Le nom est mal choisi, j’en conviens (meme si je n’ai pas mieux à proposer), mais fais au moins l’effort de lire le premier message, celui qui lance le sujet, tu verras que tu t’es trompé d’endroit. 

                                                              Quand tu demanderas au bon endroit, pense aux formules de politesse, à mettre ton code dans les balises codes et à être plus explicite sur la question (Mettre du contexte et tout)

                                                              Pour le php dans du JS, je ne sais pas si t’es le seul à faire ça mais il ne faut pas le faire. Et non, je n’ai pas de solution pour le faire car c’est une mauvaise idée de départ.

                                                              Je ne comprends pas pourquoi tu as besoin du php pour modifier du style. Pour moi ca n’a pas de sens, pourquoi le code serveur fournit une largeur au client (à la vue donc). Qu’est ce que fait ce php qui ne peut pas être fait en JS ?

                                                              En fait, j’ai l’impression de lire du code qu’on pouvait faire en 2010 (et encore on ne mettait pas tout dans le même fichier). Le développement web a beaucoup changé. Regarde des frameworks comme AngularJS pour avoir une architecture propre. Vu ta maturité sur le sujet (sans vouloir denigrer), tu risques d’être un peu largué au debut mais je pense que c’est important de prendre le temps de faire les choses correctement pour ne pas prendre de mauvaises habitudes. 

                                                              J’insiste sur AngularJS. Si tu es dans une demarche d’apprentissage, c’est vraiment la techno à utiliser. Tu vas avoir l’impression que tout est plus compliqué mais c’est juste que tu n’auras pas les bons automatismes. Si tu veux en faire ton metier, c’est archi important.

                                                              • Partager sur Facebook
                                                              • Partager sur Twitter

                                                              MOOC Créez une application responsive

                                                              × 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