message il manque { un peu flou et un autre qui parle du nom d'un paramètre qui doit être suivi par :
Warning : variable jamais utilisé, correction var en let
correction interactive : point blanc (solution proposée)
bouton fix pour actions
refaire un cmd+b pour voir si elle a été corrigée
Attention : se méfier des propositions, error où il faut ajouter un ;, il ne comprend pas votre code, on va avoir une autre fois la même erreur juste après
Attention : MAJ des settings du projet car compilateur a évolué (rajouter des warning supplémentaire)
Finir debbugage de la veille
Depuis Xcode 9 : lancement simultané de simulateur
Plusieurs appareil de lancer sans avoir besoin de relancer (nb max dépend de votre mac) il vous dira si c'est trop
Debug que sur un seul simulateur à la fois
1 error de compilation : collection vide à cause d'un double removeFirst() dans AppDelegate
Break point et cmd+r
thread1 break point
on voit la valeur de testArray et voir le contenu
Bouton pour continuer le run : continue program execution
Bouton step over : pas à pas va à la ligne suivante
Break point
Actif/inactif : selon la couleur (bleu/gris)
l'intégralité des break point peuvent être désactivés
si désactivé avant la désactivation générale (garde les états actif/inactifs)
Accès documentation
clic sur un élément : Barre latérale avec menu ?
alt+Clic sur un élément : point d'interrogation
exemple sur la documentation d'une fonction
On peut charger la documentation en local
interface builder
storyboard main
composants
controls : outlet action
Storyboard
scène
segue way : chemin, relation expliquée entre les scènes, infos de transition et ou de relation
creation new projet
voir le fichier principal : main (et pas lunch screen)
dans le main interface
et voir la storyboard main
Main storyboard
clic sur ma scène
menus côté droit : onglet milieu : background
comment mettre plus de temps sur le launch screen
exercice champs texte et bouton
en bas partie droite : en jaune nouveaux types de scène (pas maintenant)
composants text field et button
champs de recherche de composant en bas
tas de guides bleus pour positionner, espacer, aligner, aérer, mettre des marges
human interface guidelines (documentation)
Main storyboard
label
double clic ou barre latérale pour changer le texte
manque visibilité
Font augmentée à 25 et label à save
exercice récupérer, interagir avec l'UI pour print le champ text
mode assistant, deuxième petit bouton, d'un coté UI et de l'autre le code en même temps
variable pour accéder au champs text : nameTextfield
clic + ctrl de l'élément bouton,
proposition d'outlet (ma variable)
weak on lui fait confiance, on est d'accord (pas mtn)
@outlet, petit point pour voir à quoi c'est relié
Main storyboard
exercice récupérer, interagir avec l'UI pour print le champ text
créer le lien de l'élément bouton vers code : ctrl + clic
ici on créer une action
on choisi le type d'event, le type UIButon
fonction swift créer, argument sender par défaut ()
On print le text du champs dans cette action, dans la console du terminal
Si j'ai rien à faire de mon label : je n'ai pas besoin d'outlet
Si customisation : outlet oui
Composants et Controls utilisables
Controls : actions ou IBActions
Outlet : tout le reste, les variables ect
Labels, button, textfield (evenement on text changing)
type de contenus, types de clavier (si adresse mail tel clavier, si numero tel afficher clavier numérique ect)
uiimageview
scale to fill : apparaitre toute l'image dans la zone, attention peu déformer l'image
aspect fit : apparaitre intégrale sans déformation
aspect fill : apparaitre une partie de l'image qui remplie toute la zone
Autres composants
UIswich
value on/off
UISliders
toujours lié à un sender et à un valeur change (.value)
définir par défaut, val min, val max et on peut récupérer les valeurs entre en Float
pas ne notion de pas, de range dans le sliders
Listes : plusieurs types différents
Liste déroulante : tableview
listes avancées : collection view, scroll view
Picker view : (date picker)
Exercice guidé appelé Light
UIImage ajouter dans Assets
créer UIImageView
Image en png
à chaque fois en différentes résolutions
100x100 pour l'imageView
il faudrait prévoir pour tous les appareils
100x100 (pu besoin), 200x200 == 2x et 300x300 == 3x
p25 : light ou 96
help : cmd+shift+0
UISwitch outlet + button et on modifie view.background
Sinon refaire le switch avec un button et une enum
Unit 2.2 : Les fonctions
Swift utilise des paramètres nommés par défaut
nom du paramètre apparait quand on l'appelle
Optimisé :
On peut appeler la fonction dans un résultat print
print("Bienvenue à l'école vous avez \(coursJournee(matin: 5, apres: 6)) cours aujourd'hui")