Companion BOOKS FOR PROFESSIONALS BY PROFESSIONALS® eBook Available iCo v O e r Get started building your very first S s This update of an Apress bestseller walks you through creating your first app, with plain 7 English and practical examples using the latest iOS 7 software development platform iP iPhone or iPad apps and more. It cuts through the fog of jargon and misinformation that surrounds iPhone and h iPad app development, and gives you simple, step-by-step instructions to get you started. o • Teaches iPhone and iPad apps development in language anyone can understand n • Provides simple, step-by-step examples that make learning easy, using iOS 7 e • Offers bonus videos from the author that enable you to follow along—it’s like a your own private classroom n d The iPhone is the hottest gadget of our generation, and much of its success has been i P fueled by the App Store, Apple’s online marketplace for iPhone apps. Over 1 billion apps were downloaded during the nine months following the launch of the App Store, ranging a from the simplest games to the most complex business apps. Everyone has an idea for the d next best-selling iPhone app—that’s why you’re reading this now! And with the popularity of the iPad, this demand will just continue to grow. A p You’ll Learn How To: p • s Get both yourself and your computer set up for iPhone and iPad application development f • o Start by making small changes to existing applications to build your knowledge r and experience before creating your own applications A • Follow steps in plain English to build simple apps and get them working b immediately • s Style your application so that it looks good and users can easily navigate o through it l • Use shortcuts and cheat sheets to create apps the easy way u t iPhone iPad Apps e and B e g i n Absolute Beginners n for e r s FOURTH EDITION FOURTH EDITION M o rL Dr. Rory Lewis | Laurence Moroney oe nw e i COMPANION eBOOK ys US $34.99 ISBN 978-1-4302-6361-6 Shelve in Mobile Computing SOURCE CODE ONLINE User level: www.apress.com Beginning 9 781430 263616 m b.co dr dr @ 4 21 8 4 7 by c2 d e as urch p as w ook b This For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. Contents at a Glance About the Authors ��������������������������������������������������������������������������������������������������������������xiii About the Technical Reviewer ��������������������������������������������������������������������������������������������xv Acknowledgments ������������������������������������������������������������������������������������������������������������xvii Introduction �����������������������������������������������������������������������������������������������������������������������xix ■ Chapter 1: Getting Started �������������������������������������������������������������������������������������������������1 ■ Chapter 2: Your First iOS Apps ����������������������������������������������������������������������������������������13 ■ Chapter 3: Running Your App on a Device �����������������������������������������������������������������������37 ■ Chapter 4: Your Second iOS App ��������������������������������������������������������������������������������������57 ■ Chapter 5: Going Deeper: Patterns and Delegates �����������������������������������������������������������83 ■ Chapter 6: Debugging iOS7 Apps �����������������������������������������������������������������������������������103 ■ Chapter 7: Exploring UI Controls �����������������������������������������������������������������������������������125 ■ Chapter 8: Picker Controls ��������������������������������������������������������������������������������������������149 ■ Chapter 9: Using Table Views ����������������������������������������������������������������������������������������179 ■ Chapter 10: Mapping in iOS �������������������������������������������������������������������������������������������215 v vi Contents at a Glance ■ Chapter 11: Web Views and Connections ����������������������������������������������������������������������231 ■ Chapter 12: iPad Considerations �����������������������������������������������������������������������������������251 ■ Chapter 13: Deploying Your App to the App Store ���������������������������������������������������������273 Index ���������������������������������������������������������������������������������������������������������������������������������305 Introduction “Ultimately design defines so much of our experience. I think there is a profound and enduring beauty in simplicity. In clarity. In efficiency. True simplicity is derived from so much more than just the absence of clutter. It is about bringing order to complexity. iOS 7 is a clear representation of these goals. iOS 7 brings with it the most significant set of changes to the user interface since the very first iOS. We see iOS 7 as defining an important new direction, and in many ways—a beginning.” —Jonathan Ive, Designer of iOS When the original iPhone was released in 2007, it began a wave of innovation in mobility that is far from over. Since then, the user interface has remained largely unchanged—until now, with the release of iOS 7. With this release, Apple has begun the next phase of mobile user interface innovation and has rejuvenated the already vibrant developer market. If you haven’t built for iOS, there has never been a better time to start. This is, as Jonathan Ive mentions above, a beginning. With this book in your hands, you have everything you need to start on the road to learning the essential skills for iOS 7 development. There are so many concepts that may be confusing to beginners, but when you follow the step-by-step tutorials in this book, you’ll begin to knock those concepts down, one by one, until, by the time you end this book, you’ll know what it takes to be an iOS 7 developer, and you’ll be able to approach online documentation, open source samples, or more complex tutorials confident that you’ve gotten the foundation down. This book, like iOS 7 in its way, is a dramatic makeover of the series of “Absolute Beginners” books. It’s been rewritten from the ground up to make it more approachable, more intuitive, and more fun than ever before. I hope you enjoy it, and I look forward to seeing what you can build on iOS 7. —Laurence Moroney xix 1 Chapter Getting Started If you’ve picked up this book and have read this far, you’re likely interested in being an iPhone and iPad developer. Given the popularity of this platform and the stories of how lucrative development for it can be, you’ve made a great choice. However, you may also have heard stories of how difficult it can be, how you need to learn abstract or difficult languages and concepts, or how you need to use tools that programmers don’t like, or indeed you may have heard how difficult it can be to put your work into the app store, where you can make some money. Unlearn all that. It’s really not that bad, and it can be a fun journey. In this book, you’ll go through the basics of what you need to know, from getting the developer tools, to learning how to use them to design and code iOS apps, to debugging and fixing your apps before finally deploying them to the app store. Your focus will be on the brand new iOS 7 platform. iOS is the operating system (O.S.) that powers these devices. It was first released (although called iPhone OS back then) with the first iPhone back in 2007. In 2013, Apple gave iOS its biggest and most revolutionary update with the release of version 7, called iOS7. This book is designed for iOS7 development, using a programmer’s tool called Xcode and a language called Objective-C. The only thing you’ll need is a Mac computer, because Xcode runs only on the Mac, and you’ll have to ensure that it’s an Intel-based Mac running Mac OS X Snow Leopard or later. Any Mac bought in the last three or four years should be fine. As you’ll see in the “Getting Xcode” section later in this chapter, you get Xcode from the app store, so you’ll need an account there too. It’s free to get an account, and Xcode is free to download. You don’t need an iPhone or iPad in order to develop for them, as Xcode gives you a simulator for both of these devices. However, if you want to test on a physical device, which sometimes is necessary, you’ll need a developer account for iOS development, at a cost of $99 per year. In this chapter you’ll get started by downloading and installing Xcode and taking a look at how it works. You’ll also see how to sign up for a developer account and how to access it. 1 2 CHAPTER 1: Getting Started Getting a Mac First off, you will definitely need a Mac to work with. It doesn’t have to be the latest, most expensive model, but as mentioned in the previous section, it must be an Intel-based Mac running Mac OS X Snow Leopard or later. We wrote this book using two Macs—a 2011 model iMac and a 2011 model MacBook Air. You can see the different options available to you at http://www.apple.com/mac/, displayed across the top of the screen, as shown in Figure 1-1. Figure 1-1. Buying a Mac At the time of writing, the latest version of OS X, called Mavericks, was in preview, as indicated in Figure 1-1. Of course, you don’t need Mavericks, but if you have it, you’re fine to continue. CHAPTER 1: Getting Started 3 When buying a Mac, there are several important attributes that you should consider: Processor Speed: The faster the processor, the quicker your programs will load, the quicker they’ll update the screen, and the quicker Xcode will compile your apps Memory: The more memory the better. OS X will use memory as it runs applications. If it needs to use more memory than is available, it has to temporarily store information on disk. Accessing the disk is slower than accessing memory, so the more memory, the faster your machine will generally operate Disk Space: As you download or create information, you’ll take up disk space. The more space you have, the more time you have before you run out! Disk Type: Most machines have a hard disk, but some have a flash drive, also known as a solid state drive (SSD). Hard disks are cheaper, so machines with flash drives tend to be more expensive, or, because of the expense, will have less capacity. The big advantage of flash drives, however, is that they are very fast—in some cases, almost as fast as memory. Thus, a machine with a flash drive can be very responsive, but may have less available storage. MacBook Airs use flash drives, which are generally optional on the other machines. Screen Resolution: Screen resolution is the number of dots on your screen in width and height. So, for example, you might see 1366x768 as the resolution on a machine, indicating that the screen has 1366 dots (pixels) across and 768 down. The bigger the resolution, the more you’ll see. When developing, it’s good to have a big screen resolution, giving you plenty of room to view Xcode, the simulator, and a browser for the documentation all at the same time. We like to use an iMac for our main development, because it comes with a large monitor that offers very high resolution. We use a MacBook Air as a backup, because it’s light and very fast (due to its flash drive). Getting Xcode OSX Snow Leopard and later include an app store application through which you can get free software or purchase paid software. Apple distributes Xcode using the app store. If you’re not familiar with the app store, you can see its icon in Figure 1-2. It’s the one in the center with the pencils and ruler arranged like the letter “A.” Figure 1-2. The Mac app store 4 CHAPTER 1: Getting Started When you launch the app store, you’ll see a home screen with the latest “Editor’s Choice” applications, as well as others that are new and noteworthy. At the top right side of the screen you’ll see a search box. Type “Xcode” into this box and press the “Enter” key. See Figure 1-3. Figure 1-3. Searching for Xcode The app store will return a bunch of apps that match this search term. It should look something like Figure 1-3, but don’t worry if it’s a little different—apps are being added all the time. Just make sure that you can see Xcode itself, with its “hammer” icon, as shown in Figure 1-4. Figure 1-4. Searching for Xcode If you have a store account, you can go ahead and get Xcode now. If not, read the next section, where you’ll see how to get an account that you can use to acquire and download Xcode. Getting a Store Account With the app store open, select the “Store” menu at the top of the screen, and from this select “Create Account….” See Figure 1-5. CHAPTER 1: Getting Started 5 Figure 1-5. Getting a store account You’ll be taken to the “Welcome to the App Store” screen. From here, you can click “Continue.” You can see it in Figure 1-6. Figure 1-6. Step 1 of setting up an app store account The next step gives you the terms and conditions of the store, as well as Apple’s privacy policy. If you agree to the terms, check the box and then click the “Agree” button. See Figure 1-7.
Description: