iOS 6编程Cookbook(影印版)
Vandad Nahavandipoor
出版时间:2013年06月
页数:976
“Vandad又一次做到了。这本《iOS 6 编程》中包含的各种易于理解的实例适合于不同经验层次的iOS开发者,是权威性的资源。他是当今最佳的iOS书籍作者。”
——Ron Roche
Workday公司的资深编译和发布工程师

本书将帮助你克服那些为iPhone,iPad或者iPod touch创建应用时不可避免会碰到的各种棘手问题。通过利用在本修订手册中列出的新的和校正过的实例,你将快速掌握编写完成iOS应用所需的各个步骤——包括存储和保护数据、增强和动画化图形、管理文件和目录以及使用Passbook。
本手册针对iOS 6 SDK做了完整的更新,它为你展示了如何使用数以百计的技术来解决各个层面的开发人员都会面临的常见问题。每种实例都包含了你可以直接使用的样例代码。

· 使用Pass Kit来提交诸如忠诚卡(loyalty card)这样的数字签名通行证
· 使用Cocoa Auto Layout来定义UI元素的布局
· 开发位置感知的应用
· 实现手势识别的样例
· 使用新的Objective-C运行时特性
· 播放音频和视频文件与访问iPod库
· 从Address Book中检索联系人和群组
· 确定相机的可用性和访问Photo库
· 创建多任务感知的应用
· 使用Event Kit来管理日程表、日期和事件
· 运用加速计和陀螺仪
· 使用iCloud服务来增强你的应用

Vandad Nahavandipoor从事软件开发工作多年,使用过Cocoa,Cocoa Touch, Assembly,Delphi和.NET等多种语言。在一家移动支付方案全球领导者公司工作期间,他为一些世界上最大的品牌客户提供了移动应用,其中包括Visa和US Bank。
  1. Chapter 1 The Basics
  2. Introduction
  3. Creating a Simple iOS App in Xcode
  4. Understanding Interface Builder
  5. Compiling iOS Apps
  6. Running iOS Apps on the Simulator
  7. Running iOS Apps on iOS Devices
  8. Packaging iOS Apps for Distribution
  9. Declaring Variables in Objective-C
  10. Allocating and Making Use of Strings
  11. Comparing Values in Objective-C with an if Statement
  12. Implementing Loops with for Statements
  13. Implementing while Loops
  14. Creating Custom Classes
  15. Defining Functionality for Classes
  16. Defining Two or More Methods with the Same Name
  17. Allocating and Initializing Objects
  18. Adding Properties to Classes
  19. Moving from Manual Reference Counting to Automatic Reference Counting
  20. Typecasting with Automatic Reference Counting
  21. Delegating Tasks with Protocols
  22. Determining Whether Instance or Class Methods Are Available
  23. Determining Whether a Class Is Available at Runtime
  24. Allocating and Making Use of Numbers
  25. Allocating and Making Use of Arrays
  26. Allocating and Making Use of Dictionaries
  27. Allocating and Making Use of Sets
  28. Creating Bundles
  29. Loading Data from the Main Bundle
  30. Loading Data from Other Bundles
  31. Sending Notifications with NSNotificationCenter
  32. Listening for Notifications Sent from NSNotificationCenter
  33. Chapter 2 Implementing Controllers and Views
  34. Introduction
  35. Displaying Alerts with UIAlertView
  36. Creating and Using Switches with UISwitch
  37. Customizing the UISwitch
  38. Picking Values with UIPickerView
  39. Picking the Date and Time with UIDatePicker
  40. Implementing Range Pickers with UISlider
  41. Customizing the UISlider
  42. Grouping Compact Options with UISegmentedControl
  43. Customizing the UISegmentedControl
  44. Presenting and Managing Views with UIViewController
  45. Presenting Sharing Options with UIActivityViewController
  46. Implementing Navigation with UINavigationController
  47. Manipulating a Navigation Controller’s Array of View Controllers
  48. Displaying an Image on a Navigation Bar
  49. Adding Buttons to Navigation Bars Using UIBarButtonItem
  50. Presenting Multiple View Controllers with UITabBarController
  51. Displaying Static Text with UILabel
  52. Customizing the UILabel
  53. Accepting User Text Input with UITextField
  54. Displaying Long Lines of Text with UITextView
  55. Adding Buttons to the User Interface with UIButton
  56. Displaying Images with UIImageView
  57. Creating Scrollable Content with UIScrollView
  58. Loading Web Pages with UIWebView
  59. Presenting Master-Detail Views with UISplitViewController
  60. Enabling Paging with UIPageViewController
  61. Displaying Popovers with UIPopoverController
  62. Displaying Progress with UIProgressView
  63. Listening and Reacting to Keyboard Notifications
  64. Constructing and Displaying Styled Texts
  65. Chapter 3 Auto Layout and the Visual Format Language
  66. Introduction
  67. Placing UI Components in the Center of the Screen
  68. Defining Horizontal and Vertical Constraints with the Visual Format Language
  69. Utilizing Cross View Constraints
  70. Configuring Auto Layout Constraints in Interface Builder
  71. Chapter 4 Constructing and Using Table Views
  72. Introduction
  73. Instantiating a Table View
  74. Assigning a Delegate to a Table View
  75. Populating a Table View with Data
  76. Receiving and Handling Table View Events
  77. Using Different Types of Accessories in a Table View Cell
  78. Creating Custom Table View Cell Accessories
  79. Displaying Hierarchical Data in Table Views
  80. Enabling Swipe Deletion of Table View Cells
  81. Constructing Headers and Footers in Table Views
  82. Displaying Context Menus on Table View Cells
  83. Moving Cells and Sections in Table Views
  84. Deleting Cells and Sections from Table Views
  85. Utilizing the UITableViewController for Easy Creation of Table Views
  86. Displaying a Refresh Control for Table Views
  87. Chapter 5 Storyboards
  88. Introduction
  89. Creating a Project with Storyboards
  90. Adding a Navigation Controller to a Storyboard
  91. Passing Data From One Screen to Another
  92. Adding a Storyboard to an Existing Project
  93. Chapter 6 Concurrency
  94. Introduction
  95. Constructing Block Objects
  96. Accessing Variables in Block Objects
  97. Invoking Block Objects
  98. Dispatching Tasks to Grand Central Dispatch
  99. Performing UI-Related Tasks with GCD
  100. Executing Non-UI Related Tasks Synchronously with GCD
  101. Executing Non-UI Related Tasks Asynchronously with GCD
  102. Performing Tasks After a Delay with GCD
  103. Performing a Task Only Once with GCD
  104. Grouping Tasks Together with GCD
  105. Constructing Your Own Dispatch Queues with GCD
  106. Running Tasks Synchronously with Operations
  107. Running Tasks Asynchronously with Operations
  108. Creating Dependency Between Operations
  109. Creating Timers
  110. Creating Concurrency with Threads
  111. Invoking Background Methods
  112. Exiting Threads and Timers
  113. Chapter 7 Core Location and Maps
  114. Introduction
  115. Creating a Map View
  116. Handling the Events of a Map View
  117. Pinpointing the Location of a Device
  118. Displaying Pins on a Map View
  119. Displaying Pins with Different Colors on a Map View
  120. Displaying Custom Pins on a Map View
  121. Converting Meaningful Addresses to Longitude and Latitude
  122. Converting Longitude and Latitude to a Meaningful Address
  123. Chapter 8 Implementing Gesture Recognizers
  124. Introduction
  125. Detecting Swipe Gestures
  126. Detecting Rotation Gestures
  127. Detecting Panning and Dragging Gestures
  128. Detecting Long Press Gestures
  129. Detecting Tap Gestures
  130. Detecting Pinch Gestures
  131. Chapter 9 Networking, JSON, XML, and Twitter
  132. Introduction
  133. Downloading Asynchronously with NSURLConnection
  134. Handling Timeouts in Asynchronous Connections
  135. Downloading Synchronously with NSURLConnection
  136. Modifying a URL Request with NSMutableURLRequest
  137. Sending HTTP GET Requests with NSURLConnection
  138. Sending HTTP POST Requests with NSURLConnection
  139. Sending HTTP DELETE Requests with NSURLConnection
  140. Sending HTTP PUT Requests with NSURLConnection
  141. Serializing Arrays and Dictionaries into JSON
  142. Deserializing JSON into Arrays and Dictionaries
  143. Integrating Twitter Functionality into Your Apps
  144. Parsing XML with NSXMLParser
  145. Chapter 10 Audio and Video
  146. Introduction
  147. Playing Audio Files
  148. Handling Interruptions while Playing Audio
  149. Recording Audio
  150. Handling Interruptions while Recording Audio
  151. Playing Audio over Other Active Sounds
  152. Playing Video Files
  153. Capturing Thumbnails from a Video File
  154. Accessing the Music Library
  155. Chapter 11 Address Book
  156. Introduction
  157. Requesting Access to the Address Book
  158. Retrieving a Reference to an Address Book
  159. Retrieving All the People in the Address Book
  160. Retrieving Properties of Address Book Entries
  161. Inserting a Person Entry into the Address Book
  162. Inserting a Group Entry into the Address Book
  163. Adding Persons to Groups
  164. Searching the Address Book
  165. Retrieving and Setting a Person’s Address Book Image
  166. Chapter 12 Files and Folder Management
  167. Introduction
  168. Finding the Paths of the Most Useful Folders on Disk
  169. Writing to and Reading from Files
  170. Creating Folders on Disk
  171. Enumerating Files and Folders
  172. Deleting Files and Folders
  173. Securing Files on Disk
  174. Saving Objects to Files
  175. Chapter 13 Camera and the Photo Library
  176. Introduction
  177. Detecting and Probing the Camera
  178. Taking Photos with the Camera
  179. Taking Videos with the Camera
  180. Storing Photos in the Photo Library
  181. Storing Videos in the Photo Library
  182. Retrieving Photos and Videos from the Photo Library
  183. Retrieving Assets from the Assets Library
  184. Editing Videos on an iOS Device
  185. Chapter 14 Multitasking
  186. Introduction
  187. Detecting the Availability of Multitasking
  188. Completing a Long-Running Task in the Background
  189. Receiving Local Notifications in the Background
  190. Playing Audio in the Background
  191. Handling Location Changes in the Background
  192. Saving and Loading the State of Multitasking iOS Apps
  193. Handling Network Connections in the Background
  194. Handling Notifications Delivered to a Waking App
  195. Responding to Changes in App Settings
  196. Opting Out of Multitasking
  197. Chapter 15 Core Data
  198. Introduction
  199. Creating a Core Data Model with Xcode
  200. Generating Class Files for Core Data Entities
  201. Creating and Saving Data Using Core Data
  202. Reading Data from Core Data
  203. Deleting Data from Core Data
  204. Sorting Data in Core Data
  205. Boosting Data Access in Table Views
  206. Implementing Relationships in Core Data
  207. Chapter 16 Dates, Calendars, and Events
  208. Introduction
  209. Retrieving the List of Calendars
  210. Adding Events to Calendars
  211. Accessing the Contents of Calendars
  212. Removing Events from Calendars
  213. Adding Recurring Events to Calendars
  214. Retrieving the Attendees of an Event
  215. Adding Alarms to Calendars
  216. Handling Event Changed Notifications
  217. Presenting Event View Controllers
  218. Presenting Event Edit View Controllers
  219. Chapter 17 Graphics and Animations
  220. Introduction
  221. Enumerating and Loading Fonts
  222. Drawing Text
  223. Constructing, Setting, and Using Colors
  224. Drawing Images
  225. Constructing Resizable Images
  226. Drawing Lines
  227. Constructing Paths
  228. Drawing Rectangles
  229. Adding Shadows to Shapes
  230. Drawing Gradients
  231. Displacing Shapes Drawn on Graphic Contexts
  232. Scaling Shapes Drawn on Graphic Contexts
  233. Rotating Shapes Drawn on Graphic Contexts
  234. Animating and Moving Views
  235. Animating and Scaling Views
  236. Animating and Rotating Views
  237. Chapter 18 Core Motion
  238. Introduction
  239. Detecting the Availability of an Accelerometer
  240. Detecting the Availability of a Gyroscope
  241. Retrieving Accelerometer Data
  242. Detecting Shakes on an iOS Device
  243. Retrieving Gyroscope Data
  244. Chapter 19 iCloud
  245. Introduction
  246. Setting Up Your App for iCloud
  247. Storing and Synchronizing Dictionaries in iCloud
  248. Creating and Managing Folders for Apps in iCloud
  249. Searching for Files and Folders in iCloud
  250. Storing User Documents in iCloud
  251. Managing the State of Documents in iCloud
  252. Handling Conflicts in iCloud Documents
  253. Chapter 20 Pass Kit
  254. Introduction
  255. Creating Pass Kit Certificates
  256. Creating Pass Files
  257. Providing Icons and Images for Passes
  258. Preparing Your Passes for Digital Signature
  259. Signing Passes Digitally
  260. Distributing Passes Using Email
  261. Distributing Passes Using Web Services
  262. Enabling Your iOS Apps to Access Passes on iOS Devices
  263. Interacting with Passbook Programmatically
书名:iOS 6编程Cookbook(影印版)
国内出版社:东南大学出版社
出版时间:2013年06月
页数:976
书号:978-7-5641-4198-1
原版书书名:iOS 6 Programming Cookbook
原版书出版商:O'Reilly Media
Vandad Nahavandipoor
 
Vandad Nahavandipoor已经从事Cocoa、汇编、Delphi、.NET和Cocoa Touch软件开发很多年,对iPhone OS的开发始于SDK发布之时。从那以后,他便致力于开发基于iPhone的应用,现在也包括iPad。Vandad在开发iOS应用的过程中最有价值的资本是他在与一些向顾客提供移动应用的世界大品牌合作中积累的实际经验,如Visa和U.S.Bank。
 
 
The cover image for iOS6 Programming Cookbook is the Cowan’s shrew tenrec (Microgale cowani). One of 20 known species of Microgales native to Madagascar, Cowan’s shrew tenrec is 4 to 6 inches in length and weighs less than an ounce, with a tail smaller than its body. Because it has poor eyesight, the shrew tenrec instead uses its stiff, sensitive whiskers and a keen sense of smell to navigate the dense tropical rainforests of eastern Madagascar. The tenrecs are one of the few mammals that retain a cloaca, a single urogenital opening that was characteristic of the earliest known mammals and the modern day platypus and marsupials.

An insectivore like many tenrecs, Cowan’s shrew tenrec is also known to eat small mammals and earthworms. Its natural predators include larger tenrecs and Madagascan red owls, although it can evade most predators by fleeing and hiding in the leafy underbrush of the forest floor, where it also forages for insects.

Some speculate that the tenrecs migrated to Madagascar from Africa through oceanic dispersal, or rafting over, after the island had broken off from the continent 165 million years ago. The earliest known tenrecs appeared on the island some 60 million years ago and have evolved into widely diversified species, having arrived at a time when there were no other mammals, which allowed them to adapt to their ecological niches with little to no competition. Most African tenrecs have disappeared and are known only through fossils. The larger tenrecs of Madagascar evolved into quill-bearing mammals similar to hedgehogs, while the smaller tenrecs look like shrews or moles; however, tenrecs are not related to any of those other animals.