Xebia WatchKit TechEvent

Xebia WatchKit TechEvent

3f309c992e2b1a5c3c014e63810a2f68?s=128

Simone Civetta

December 03, 2014
Tweet

Transcript

  1. 1.
  2. 5.
  3. 6.
  4. 8.

    OS

  5. 10.
  6. 11.

    Interface —1 couronne (digital crown) —sélection —zoom in/out —1 bouton

    physique (conversation button) —favoris — Pay
  7. 17.
  8. 19.
  9. 22.
  10. 28.

    Pour commencer : glossaire —Watch App : executé sur la

    montre —Extension : executé sur iPhone
  11. 33.

    Architecture / 1 —La Watch App est lancée depuis un

    bundle contenant storyboard et ressources statiques
  12. 35.
  13. 38.

    Interface utilisateur / 2 —Les Scenes du Storyboard ne peuvent

    pas être modifiées par l'extension iPhone à runtime —L'extension peut afficher/cacher des éléments à l'intérieur de la Watch App
  14. 40.

    Les composants / 1 —Les composants WatchKit (buttons, labels, etc)

    sont proxifiés —L'extension manipule un objet proxy (WKInterface*) —Il n'est pas possible de créer programmatiquement des éléments visuels
  15. 41.

    Les composants / 2 —Une extension peut contrôler : —Taille

    (Height/Width) —Alpha —Visibilité (propriété hidden) —Hidden = Gone
  16. 46.

    Cycle de vie —WA : Create Storyboard —E : initWithContext:

    —E : willActivate —E : action methods —E : didDeactivate
  17. 47.
  18. 48.

    WKInterfaceGroup —cf. Layout sur Android —Horizontaux/Verticaux —Taille paramétrable, qui peut

    dépendre du contenu/conteneur —Fit content —Relative to container
  19. 50.

    WKInterfaceTable —Chaque row est associée à un type de row

    (rowType) —Chaque rowType est associé à un controller —setNumberOfRows(_:withRowType:) —setRowTypes(_ rowTypes: [AnyObject]!) —table(_ table: WKInterfaceTable!, didSelectRowAtIndex rowIndex:
  20. 52.
  21. 53.
  22. 57.

    Navigation techniques —Segues —pushControllerWithName(_ name: String!, context context: AnyObject!) —

    presentControllerWithName(_:con text:) — presentControllerWithNames(_:co ntexts:)
  23. 58.
  24. 59.
  25. 61.

    Tips 'n Tricks —Utilisez les frameworks dynamiques —Modifiez les propriétés

    des Schemes —Activez le mode "External display -> Apple Watch" dans le menu du simulateur