You are previewing Beginning iOS 5 Development: Exploring the iOS SDK.
O'Reilly logo
Beginning iOS 5 Development: Exploring the iOS SDK

Book Description

The team that brought you the bestselling Beginning iPhone 4 Development is back again for Beginning iOS 5 Development, bringing this definitive guide up-to-date with Apple's latest and greatest iOS SDK, as well as with the latest version of Xcode.

There's coverage of brand new technologies, with chapters on storyboards and iCloud, for example, as well as significant updates to existing chapters to bring them in line with all the changes that came with the iOS 5 SDK. You'll have everything you need to create your very own apps for the latest iOS devices, including the iPhone 4S, iPad 2, and the latest iPod touch. Every single sample program in the book has been rebuilt from scratch using Xcode 4.2 and the latest iOS 5-specific project templates and designed to take advantage of the latest Xcode features.

Assuming only a minimal working knowledge of Objective-C, and written in a friendly, easy-to-follow style, Beginning iOS 5 Development offers a complete soup-to-nuts course in iPhone, iPad, and iPod touch programming. The book starts with the basics, walking through the process of downloading and installing Xcode and the iOS 5 SDK, and then guides you though the creation of your first simple application.

From there, you'll learn how to integrate all the interface elements Apple touch users have come to know and love, such as buttons, switches, pickers, toolbars, and sliders. You'll master a variety of design patterns, from the simplest single view to complex hierarchical drill-downs. The confusing art of table building will be demystified, and you'll learn how to save your data using the iPhone file system. You'll also learn how to save and retrieve your data using a variety of persistence techniques, including Core Data and SQLite. And there's much more! You'll learn to draw using Quartz 2D and OpenGL ES, add multitouch gestural support (pinches and swipes) to your applications, and work with the camera, photo library, accelerometer, and built-in GPS. You'll discover the fine points of application preferences and learn how to localize your apps for multiple languages.

The iOS 5 update to the bestselling and most recommended book for Cocoa touch developers

Packed full of tricks, techniques, and enthusiasm for the new SDK from a developer perspective

Written in an accessible, easy-to-follow style

What you'll learn

Everything you need to know to develop your own bestselling iPhone and iPad apps

Best practices for optimizing your code and delivering great user experiences

How to create "universal" apps for both the iPhone and iPad

What is data persistence and why is it important

Get started with building cool, crisp User Interfaces

What and how to use Table Views

How to do graphics with Quartz and OpenGL ES

What geo app development features the new iOS 5 brings to the iPhone 4S

How to get your app in iCloud

And much much more...

Who this book is for

Everyone who wants to start developing for iPhone, iPod touch, and iPad!

Table of Contents

  1. Title
  2. Dedication
  3. Contents at a Glance
  4. Contents
  5. About the Authors
  6. About the Technical Reviewer
  7. Acknowledgments
  8. Preface
  9. Chapter 1: Welcome to the Jungle
    1. What This Book Is
    2. What You Need
    3. What's Different About Coding for iOS?
    4. What's in This Book
    5. What's New in This Update?
    6. Are You Ready?
  10. Chapter 2: Appeasing the Tiki Gods
    1. Setting Up Your Project in Xcode
    2. Introducing Xcode's Interface Builder
    3. Some iPhone Polish—Finishing Touches
    4. Bring It on Home
  11. Chapter 3: Handling Basic Interaction
    1. The Model-View-Controller Paradigm
    2. Creating Our Project
    3. Looking at the View Controller
    4. Looking at the Application Delegate
    5. Bring It on Home
  12. Chapter 4: More User Interface Fun
    1. A Screen Full of Controls
    2. Active, Static, and Passive Controls
    3. Creating the Application
    4. Implementing the Image View and Text Fields
    5. Closing the Keyboard
    6. Implementing the Switches, Button, and Segmented Control
    7. Implementing the Segmented Control Action
    8. Implementing the Action Sheet and Alert
    9. Spiffing Up the Button
    10. Crossing the Finish Line
  13. Chapter 5: Autorotation and Autosizing
    1. The Mechanics of Autorotation
    2. Handling Rotation Using Autosize Attributes
    3. Restructuring a View When Rotated
    4. Swapping Views
    5. Rotating Out of Here
  14. Chapter 6: Multiview Applications
    1. Common Types of Multiview Apps
    2. The Architecture of a Multiview Application
    3. Building View Switcher
    4. Switching Off
  15. Chapter 7: Tab Bars and Pickers
    1. The Pickers Application
    2. Delegates and Data Sources
    3. Setting Up the Tab Bar Framework
    4. Implementing the Date Picker
    5. Implementing the Single-Component Picker
    6. Implementing a Multicomponent Picker
    7. Implementing Dependent Components
    8. Creating a Simple Game with a Custom Picker
    9. Final Spin
  16. Chapter 8: Introduction to Table Views
    1. Table View Basics
    2. Implementing a Simple Table
    3. Customizing Table View Cells
    4. Grouped and Indexed Sections
    5. Implementing a Search Bar
    6. Putting It All on the Table
  17. Chapter 9: Navigation Controllers and Table Views
    1. Navigation Controller Basics
    2. Nav, a Hierarchical Application in Six Parts
    3. Breaking the Tape
  18. Chapter 10: Storyboards
    1. Creating a Simple Storyboard
    2. Dynamic Prototype Cells
    3. Static Cells
    4. You Say Segue, I Say Segue
  19. Chapter 11: iPad Considerations
    1. Split Views and Popovers
    2. Here Come the Presidents
    3. Creating Your Own Popover
    4. iPad Wrap-Up
  20. Chapter 12: Application Settings and User Defaults
    1. Getting to Know Your Settings Bundle
    2. The AppSettings Application
    3. Beam Me Up, Scotty
  21. Chapter 13: Basic Data Persistence
    1. Your Application's Sandbox
    2. File-Saving Strategies
    3. Using Property Lists
    4. Archiving Model Objects
    5. Using iOS's Embedded SQLite3
    6. Using Core Data
    7. Persistence Rewarded
  22. Chapter 14: Hey! You! Get onto iCloud!
    1. Managing Document Storage with UIDocument
    2. Adding iCloud Support
    3. What We Didn't Cover
  23. Chapter 15: Grand Central Dispatch, Background Processing, and You
    1. Grand Central Dispatch
    2. Introducing SlowWorker
    3. Threading Basics
    4. Units of Work
    5. GCD: Low-Level Queueing
    6. Background Processing
    7. Grand Central Dispatch, Over and Out
  24. Chapter 16: Drawing with Quartz and OpenGL
    1. Two Views of a Graphical World
    2. The Quartz 2D Approach to Drawing
    3. The QuartzFun Application
    4. The GLFun Application
    5. Drawing to a Close
  25. Chapter 17: Taps, Touches, and Gestures
    1. Multitouch Terminology
    2. The Responder Chain
    3. The Multitouch Architecture
    4. The Four Touch Notification Methods
    5. The TouchExplorer Application
    6. The Swipes Application
    7. Detecting Multiple Taps
    8. Detecting Pinches
    9. Defining Custom Gestures
    10. GarÇon? Check, Please!
  26. Chapter 18: Where Am I? Finding Your Way with Core Location
    1. The Location Manager
    2. The Location Manager Delegate
    3. Trying Out Core Location
    4. Wherever You Go, There You Are
  27. Chapter 19: Whee! Gyro and Accelerometer!
    1. Accelerometer Physics
    2. Don’t Forget Rotation
    3. Core Motion and the Motion Manager
    4. Detecting Shakes
    5. Accelerometer As Directional Controller
    6. Rolling On
  28. Chapter 20: The Camera and Photo Library
    1. Using the Image Picker and UIImagePickerController
    2. Implementing the Image Picker Controller Delegate
    3. Road Testing the Camera and Library
    4. It’s a Snap!
  29. Chapter 21: Application Localization
    1. Localization Architecture
    2. Strings Files
    3. Real-World iOS: Localizing Your Application
    4. Auf Wiedersehen
  30. Chapter 22: Where to Next?
    1. Apple’s Documentation
    2. Mailing Lists
    3. Discussion Forums
    4. Web Sites
    5. Blogs
    6. Conferences
    7. Follow the Authors
    8. Farewell
  31. Index