Book Image

Building Apple Watch Projects

By : Stuart Grimshaw
Book Image

Building Apple Watch Projects

By: Stuart Grimshaw

Overview of this book

With Apple’s eagerly anticipated entry into the wearable arena, the field is wide open for a new era of app development. The Apple Watch is one of the most important technologies of our time. This easy-to-understand book takes beginners on a delightful journey of discovering the features available to the developer, right up to the completion of medium-level projects ready for App Store submission. It provides the fastest way to develop real-world apps for the Apple Watch by teaching you the concepts of Watch UI, visual haptic and audio, message and data exchange between watch and phone, Web communication, and finally Visual, haptic as well as audio feedback for users. By the end of this book, you will have developed at least four fully functioning apps for deployment on watchOS 2.
Table of Contents (17 chapters)
Building Apple Watch Projects
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Interface Controller


Next we go through the same process with the interface controller, namely planning out what we think it will need to do (remembering that an incomplete plan is good enough at this stage) and stub the methods that we expect to need.

Planning the interface

The InterfaceController class will act as the CONTROLLER of communication between the user interface—the VIEW—and the actual implementation of the game—the MODEL. It needs to inform the player what the game is doing and inform the GameLogic class what the player is doing.

So, very roughly, the controller will need to do the following:

  • Accept the player's instruction to start the game

  • Flash the colors in sequence

  • Accept player input

  • Enable and disable user input as required

  • Show results when a game is over

  • Start a new game

Define Outlets to the View

Add the following declarations to the top of the InterfaceController class (not the top of the InterfaceController.swift file):

class InterfaceController: WKInterfaceController {

  ...