出版時間:2010-10 出版社:東南大學(xué)出版社 作者:艾倫 頁數(shù):356
Tag標(biāo)簽:無
內(nèi)容概要
獲取為iPhone和iPod Tbuch編程所需的實戰(zhàn)經(jīng)驗。有了這本易學(xué)易用的指南,你將通過學(xué)習(xí)如何運用Xcode、Objective—C編程語言與核心框架,構(gòu)建多個樣例應(yīng)用程序。在你掌握它之前,你將不僅擁有開發(fā)應(yīng)用的技能,還會知道如何順利完成提交應(yīng)用到iTunesApp store的流程。 無論你是一位Mac編程新手還是摩拳擦掌準(zhǔn)備上手iPhone和iPodTouch的Mac開發(fā)行家,《學(xué)習(xí)iPhone編程》都將為你構(gòu)建面向市場的iPhone應(yīng)用開一個好頭。
作者簡介
Alasdair Allan是一位Exeter大學(xué)資深研究員,他負責(zé)構(gòu)建P2P望遠鏡網(wǎng)絡(luò)。他還忙于制作開源硬件,還有一系列用于管理云服務(wù)和監(jiān)控分布式傳感器網(wǎng)絡(luò)的iPhone應(yīng)用。
書籍目錄
Preface 1. Why Go Native? The Pros and Cons Why Write Native Applications? The Release Cycle Build It and They Will Come 2. Becoming a Developer Registering As an iPhone Developer Enrolling in the iPhone Developer Program The Apple Developer Connection Installing the iPhone SDK Preparing Your iPhone or iPod touch Creating a Development Certificate Getting the UDID of Your Development Device Creating an App ID Creating a Mobile Provisioning Profile Making Your Device Available for Development 3. Your First iPhone App'. Objective-C Basics Object-Oriented Programming The Objective-C Object Model The Basics of Objective-C Syntax Creating a Project Exploring the Project in Xcode Our Project in Interface Builder Adding Code Connecting the Outlets in Interface Builder Putting the Application on Your iPhone4. Coding in Objective-C Declaring and Defining Classes Declaring a Class with the Interface Defining a Class with the Implementation Object Typing Properties Synthesizing Properties The Dot Syntax Declaring Methods Calling Methods Calling Methods on nil Memory Management Creating Objects The Autorelease Pool The alloc, retain, copy, and release Cycle The dealloc Method Responding to Memory Warnings Fundamental iPhone Design Patterns The Model-View-Controller Pattern Views and View Controllers The Delegates and DataSource Pattern Conclusion5. Table-View-Based Applications Simplifying the Template Classes Creating a Table View Organizing and Navigating Your Source Code Connecting the Outlets Building a Model Adding Images to Your Projects Connecting the Controller to the Model Mocking Up Functionality with Alert Windows Adding Navigation Controls to the Application Adding a City View Edit Mode Deleting a City Entry Adding a City Entry The "Add New City..." Interface Capturing the City Data6. Other View Controllers Utility Applications Making the Battery Monitoring Application Tab Bar Applications Refactoring the Template Adding Another Tab Bar Item Finishing Up Modal View Controllers Modifying the City Guide Application The Image Picker View Controller Adding the Image Picker to the City Guide Application7. Connecting to the Network Detecting Network Status Apple's Reachability Class Embedding a Web Browser in Your App A Simple Web View Controller Displaying Static HTML Files Getting Data Out of a UlWebView Sending Email Getting Data from the Internet Synchronous Requests Asynchronous Requests Using Web Services8. Handling Data Data Entry UITextField and Its Delegate UITextView and Its Delegate Parsing XML Parsing XML with libxml2 Parsing XML with NSXMLParser Parsing JSON The Twitter Search Service The Twitter Trends Application Regular Expressions Introduction to Regular Expressions Storing Data Using Flat Files Storing Information in an SQL Database Core Data9. Distributing Your Application Adding Missing Features Adding an Icon Adding a Launch Image Changing the Display Name Enabling Rotation Building and Signing Ad Hoc Distribution Developer-to-Developer Distribution App Store Distribution Submitting to the App Store The App Store Resource Center Reasons for Rejection10. Using Sensors Hardware Support Determining Available Hardware Support Setting Required Hardware Capabilities Using the Camera The Core Location Framework Location-Dependent Weather Using the Accelerometer Writing an Accelerometer Application Using the Digital Compass Accessing the Proximity Sensor Using Vibration11. Geolocation and Mapping User Location Annotating Maps12. Integrating Y0urApplicati0n Application Preferences Accessing Global Preferences Custom URL Schemes Using Custom Schemes Registering Custom Schemes Media Playback Using the Address Book Interactive People Picking Programmatic People Picking13. Other Native Platforms PhoneGap Download and Installation Building a PhoneGap Project MonoTouch Download and Installation Building a MonoTouch Project14. Going Further Cocoa and Objective-C The iPhone SDK Web Applications Core Data Push Notifications In-App Purchase Core Animation Game Kit Writing Games Look and Feel Hardware Accessoriesindex
章節(jié)摘錄
插圖:I added a custom PNG icon for the Refresh button to the project, setting the UIButton type to Custom and the image to point at my refresh icon (you will need to drag your icon into your Xcode project before it will be available as a custom image). I resized the Refresh button to be the same size as the Info button provided by the template, setting the View Mode to "Scale to Fill" in the Attributes tab of the Inspector window.When connecting the UIButtons to the received actions——for example, when dragging the refresh View: action to the Refresh button——choose Touch Up Inside from the drop-down menu of events that Interface Builder will present to you when you make the connection.With this number of UI elements to play with, it's going to be easy to get confused. What's more, we are not going to connect all of the labels to our code, as some of them aren't going to be updated (e.g., section headers and the “Temp:”, “Humidity:”, and “Wind:” labels).So, for the elements you will connect to an IB0utlet, use the Identity Inspector's Interface Builder Identity section to change the Name attribute of the element to be the same as the variable in the Main View Controller interface file. Figure 7-11 shows the assignments.While this doesn't make it easier to connect the outlets to the UI elements, it does make it easier to check whether we've made an incorrect connection. If you click on File's Owner and switch to the Connections tab of the Inspector window, as Figure 7-12 shows, you can quickly check that each outlet is connected to the correct UI element since the name on each side of the connection should be the same.Although we've written the interface for the view controller and built and connected our view to the interface, we haven't implemented it yet. Let's hold off on that until we've built our data model.
媒體關(guān)注與評論
“《學(xué)習(xí)iPhone編程》涵蓋了一位有追求的程序員在iPhone OS平臺上開始工作所需的·切內(nèi)容。我認為它全面而且非常可讀。力薦!” ——Fraser Speirs總監(jiān),Connected Flow有限公司,F(xiàn)lickrExport的作者
編輯推薦
《學(xué)習(xí)iPhone編程(英文)(影印版)》:立即開始使用Xcode,并且學(xué)習(xí)如何操作Interface Builder,利用模型-視圖-控制器(MVC)架構(gòu)和Objective-c,構(gòu)建一個數(shù)據(jù)條目界面,學(xué)習(xí)如何解析和存儲所收到的數(shù)據(jù),在構(gòu)建大量富有挑戰(zhàn)的樣例應(yīng)用時,解決一些典型的問題,理解App Store和ad hoc發(fā)布的要求及相關(guān)細節(jié)。使用iPhone的加速表、臨近傳感器、GPS、數(shù)字羅盤和攝像頭,將你的應(yīng)用iPhone偏好設(shè)置、媒體回放等功能集成。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載