A hands-on approach to iPad application development. Beginning iPad Application Development is written to help jumpstart beginning iPad developers. It covers the various topics in such a manner that you will progressively learn without being overwhelmed by the details. It adopts the philosophy that the best way to learn is by doing, hence the numerous Try It Out sections in all the chapters, which first show you how to build something and then explain how things work.
Although iPad programming is a huge topic, the aim for this book is to get you started with the fundamentals, and help you understand the underlying architecture of the SDK, and appreciate why things are done certain ways. After reading this book (and doing the exercises), you will be well equipped to tackle your next iPad programming challenge.
This book is for the beginning iPad developer who wants to start developing iPad applications using the Apple iPhone SDK. To truly benefit from this book, you should have some background in programming and at least be familiar with object-oriented programming concepts. If you are totally new to the Objective-C language, you might want to jump straight to Appendix D, which provides an overview of the language. Alternatively, you can use Appendix D as a quick reference while you tackle the various chapters, checking out the syntax as you try the exercises. Depending on your learning pattern, one of those approaches may work best for you.
What This Book Covers
This book covers the fundamentals of iPad programming using the iPhone SDK. It is divided into 18 chapters and four appendices.
Chapter 1: Getting Started with iPad Programming covers the various tools found in the iPhone SDK and explains their uses in iPad development.
Chapter 2: Write Your First Hello World! Application gets you started with Xcode and Interface Builder to build a Hello World application. The focus is on getting your hands dirty. More details on the various parts and components are covered in subsequent chapters.
Chapter 3: Views, Outlets, and Actions covers the fundamental concepts of iPad programming: outlets and actions. You learn how outlets and actions allow your code to interact with the visual elements in Interface Builder and why they are an integral part of every iPad application. You will also learn about the various UI widgets known as views that make up the user interface of your iPad application.
Chapter 4: View Controllers discusses the various view controllers available in the iPhone SDK. You will learn how to develop different types of iPad applications – View-based, Window-based, Split View-based, as well as Tab Bar applications.
Chapter 5: Keyboard Inputs shows you how to deal with the virtual keyboard in your iPad. You see how to hide the keyboard on demand and how to ensure that your views are not blocked by the keyboard when it is displayed.
Chapter 6: Screen Rotations demonstrates how you can reorient your application’s UI when the device is rotated. You learn about the various events that are fired when the device is rotated. You also learn how to force your application to display in a certain orientation.
Chapter 7: Using the Table View explores one of the most powerful views in the iPhone SDK – the Table view. The Table view is commonly used to display rows of data. In this chapter, you also learn how to implement search capabilities in your Table view.
Chapter 8: Application Preferences discusses the use of application settings to persist application preferences. Using application settings, you can access preferences related to your application through the Settings application available on the iPad.
Chapter 9: File Handling shows how you can persist your application data by saving the data to files in your application’s sandbox directory. You also learn how to access the various folders available in your application sandbox.
Chapter 10: Database Storage Using SQLLite3 covers the use of the embedded SQLite3 database library to store your data.
Chapter 11: Simple Animations provides an overview of the various techniques you can use to implement simple animations on the iPad. You also learn about the various affine transformations supported by the iPhone SDK.
Chapter 12: Gesture Recognizers provides an overview of the various gesture recognizers available in the iPhone SDK to help your device interpret user’s input gestures.
Chapter 13: Accessing the Accelerometer shows how you can access the accelerometer that comes with every iPad. You will also learn how to detect shakes to your device.
Chapter 14: Web Services teaches you how to consume Web services from within your iPad application. You will learn the various ways to communicate with Web services – SOAP, HTTP GET, and HTTP POST. You will also learn how to parse the returning XML result returned by the Web service.
Chapter 15: Bluetooth Programming explores the use of the Game Kit framework for Bluetooth programming. You will learn how to get two iPads to communicate using a Bluetooth connection. You will also learn how to implement voice chatting over a Bluetooth connection.
Chapter 16: Bonjour Programming shows how you can publish services on the network using the Bonjour protocol.
Chapter 17: Apple Push Notification Services explains how you can implement applications that use push notifications. The APNs allows your applications to constantly receive status updates from a service provider even though the application may not be running.
Chapter 18: Displaying Maps shows how to build location-based services application using the Map Kit framework. You will also learn how to obtain geographical locations data and use them to display a map.
Appendix A: Answers to Exercises contains the solutions to the end-of-chapter exercises found in every chapter except Chapter 1.
Appendix B: Getting Around in Xcode provides a quick run-through of the many features in Xcode.
Appendix C: Getting Around in Interface Builder provides an overview of the many features of Interface Builder.
Appendix D: Crash Course in Objective-C provides a crash course in Objective-C. Readers who are new to this language should read this chapter before getting started.
From the Back Cover
Learn to develop successful—and profitable—iPad applications. Eager to start developing applications for the iPad? Then look no further than the book in your hands. This comprehensive, hands-on approach to iPad development walks you through all the necessary tools and skills required for successful iPad app programming. You’ll first familiarize yourself with the iPhone® SDK, Xcode®, and Interface Builder tools, all of which provide a solid foundation for developing apps. You’ll then explore the features and syntax of the Objective-C® language, which is essential for creating most iPad apps. Plus, you’ll discover how to best implement the many features of the iPhone SDK into your apps so that you can deploy your applications to the Apple AppStore.
Beginning iPad Application Development:
Explains the various types of iPad applications supported by the iPhone SDK
Discusses the various types of screen orientations and ways to handle rotations
Covers the new Gesture Recognizers available in this release of the iPhone SDK
Covers the new Split View-based Application project type
Zeroes in on database storage using SQLite3
Examines Web Services, Bluetooth programming, and Bonjour programming
Covers Apple Push Notification Services programming
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
About the Author
Wei-Meng Lee is a technologist and founder of Developer Learning Solutions, a technology company specializing in hands-on training in the latest Microsoft and Apple technologies. He is also the author of Beginning iPhone SDK Programming with Objective-C and writes frequently for online publications.