Teaching App Development with Swift


Level 3, Nine Lessons

Create an app that responds to gestures such as taps, pinches, rotations, and swipes. Employ UIGestureRecognizer subclasses that standardize the most common interface gestures. Enhance interface changes with UIView animations as a vehicle for teaching Swift closure expressions.

The Finished App

Familiarize yourself with the project, and demonstrate the app students will build.

Lesson 1

Introduce the UIGestureRecognizer family, and teach students how to detect single tap gestures.

Lesson 2

Configure another UITapGestureRecognizer to detect a double tap.

Lesson 3

Facilitate a refactoring of common code, and refactor a fade-in animation effect to illustrate closure expressions.

Lesson 4

Continue exploring interface animation with a more complex closure expression.

Lesson 5

Demonstrate the interplay between multiple UITapGestureRecognizers, and teach students how to customize UITapGestureRecognizer behavior.

Lesson 6

Introduce multi-touch gestures with a UIPinchGestureRecognizer and explore UIGestureRecognizer state, represented as an enumeration.

Lesson 7

Demonstrate a second multi-touch gesture with a UIRotationGestureRecognizer.

Lesson 8

Facilitate students in detecting a swipe gesture, and teach students how to configure a UISwipeGestureRecognizer.

Lesson 9

Explore using UIResponder methods to handle motion events such as shaking.

The course materials only, and not any other content of this web page, are to be used pursuant to a Creative Commons license, as specified in the license information within the course materials.

Trademark Information

The Swift logo, Apple, the Apple logo and other Apple trademarks, service marks, graphics, and logos used in connection with the Swift Education project are trademarks or registered trademarks of Apple Inc. in the US and/or other countries. Other trademarks, service marks, graphics, and logos used in connection with the Swift Education project may be the trademarks of their respective owners. You are granted no right or license in any of the aforesaid trademarks, and further agree that you shall not remove, obscure, or alter any proprietary notices (including trademark and copyright notices) that may be affixed to or contained within the Service.

For further information about proper referential uses of the Swift logo, please review the “Guidelines for Using Apple Trademarks and Copyrights”.