Now that the iPhone 2.1 SDK has officially been released and the Apple App Store is open for business, it’s time to write killer mobile applications! To do that, you’ll need to use several powerful (and possibly unfamiliar) tools: Xcode, Interface Builder, Objective-C, and then the iPhone SDK itself. It can all be a little overwhelming at first. So how do you get started on the right foot?

Well, the good news is you don’t have to go it alone. Let Bill Dudney, an experienced iPhone developer, show you how to write your first iPhone application in these screencasts. Building iPhone applications is a visual process, and screencasts are a great way to shoulder-surf with an expert. You’ll learn his workflow, his development techniques, and the tricks of the trade.

  • Watch the preview (8 MB, 2 mins, QuickTime) where Bill highlights the recipe application he builds throughout these screencasts.
  • Don’t miss the free “Getting Started with Xcode and Interface Builder” episode (26 MB, 22 mins, QuickTime | iPhone/iPod).

Buy all 5 episodes and, combined with the free episode, you get approximately 3 hours of guided instruction by an iPhone development expert!

Writing Your First iPhone Application
Code Discussions FAQ
  • Download and watch DRM-free episodes when and where it's convenient for you
  • You get both QuickTime and iPod/iPhone formats, and Theora Ogg format for select topics
  • All the source code is available

Buy Now

All the episodes in this screencast series have been released.

 

Contents

In these screencasts, you can follow along as Bill incrementally builds an application similar to the iPhone contacts manager. He’ll help you quickly transition from a stock Xcode template to a real application you can show off to your friends, and demystify the magic along the way.

  • Episode 1: Creating Table Views

    Table views are central to many iPhone applications, such as the contact manager. In this episode, we’ll start by creating a table view to display our recipes. You’ll learn about:

    • creating a new Xcode project
    • adding tables to views in Interface Builder
    • creating view controllers
    • how delegate methods work, specifically with table views
    • making connections in Interface Builder
    • how to set up table view data sources
    • handling table cell selection
    • tricks to navigating the documentation
  • Episode 2: Linking Table Views with a Navigation Controller

    Once you have a table view that shows some data, you typically want to navigate deeper when you select a table cell. For example, when you tap on a recipe, you want to see its ingredients. That’s what navigation controllers are for. In this episode, you’ll learn about:

    • linking two table views with a navigation controller
    • how view controllers are stacked
    • adding outlets and controllers
    • cascading NIB files
    • reloading table data
    • adding disclosure indicators
    • more advanced connections in Interface Builder
  • Episode 3: Adding Text Fields and Buttons

    Every good iPhone application needs to get input from the user, and this episode shows you how to get input from the keyboard. We’ll use a table view and a text field to accept new recipe names. You’ll learn about:

    • adding table view cells
    • text fields and techniques for optimal data entry
    • implementing different button types
    • animating modal views and controllers
    • writing delegate methods to handle user input
    • ways to navigate between views
  • Episode 4: Editing On a Table View

    If you’ve played with your iPhone much, you’ve noticed those green (+) and red (-) buttons to add and remove rows from a table view. In this episode, we’ll use these UI techniques to add and remove recipe ingredients. You’ll learn about:

    • adding (+) and deleting (-) table rows
    • using the Edit/Done button for editing a table view
    • animating the addition of new table rows
    • changing the editing style icons
    • another example of a navigation controller
    • more advanced connections in Interface Builder
  • Episode 5: Persisting Data and Reordering Table Rows

    When you quit an iPhone application and restart it later, you want important data to be preserved. In this episode, we’ll save our recipes and their ingredients in a SQLite database. Then we’ll add the ability to reorder ingredients and save their order back to the database. You’ll learn about:

    • creating a SQLite database
    • persisting data to a SQLite database
    • using basic SQL statements
    • how to reorder table rows
    • limiting which rows are reorderable
    • restricting where rows can be repositioned
    • preserving row order in the database

Audience

These screencasts assume you have a basic working knowledge of Objective-C and Cocoa, although you can follow along if you know any object-oriented language.

About the Screencaster

Bill Dudney is a software developer and entrepreneur currently building software for the Mac. He’s also the author of iPhone SDK Development and Core Animation for OS X and the iPhone. Bill started his computing career on a NeXT cube with a magneto-optical drive running NeXTStep 0.9. He created several iPhone applications currently selling on the App Store. You can follow him on his blog.