疯狂iOS讲义:iPhone/iPad高级应用与手游开发 下册
作 者: 李刚 著
出版时间: 2014
内容简介
《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》以iOS 7.0、Xcode 5.0为平台,全面介绍了iOS应用开发的高级知识。本书最后两章还通过3个实际的手游介绍了cocos2d框架的用法,也包括了手游开发中用到的瓦片地图、粒子效果和物理引擎等实用技术。《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》是《疯狂iOS讲义》下册,书中不包含Objective-C编程的基本语法、iOS应用开发的基础知识等内容。《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》内容包含多点触摸与手势检测、应用国际化、数据存储、SQLite数据库与Core Data、iOS多媒体开发、加速计和陀螺仪、多线程、网络编程、定位、地图、推送机制、iCloud服务等内容,《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》最后还通过疯狂打飞机、萌仙、愤怒的小鸟等实例介绍了cocos2d框架的功能和用法。读者在阅读本书之前,建议先掌握《疯狂iOS讲义》上册中的知识。 《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》并不局限于介绍iOS编程的各种理论知识,而是从“项目驱动”的角度来讲解理论。全书一共包括近百个实例,这些示范性的实例既可帮读者更好地理解各知识点在实际开发中的应用,也可供读者在实际开发时作为参考,拿来就用。如果读者在阅读本书时遇到了技术问题,可以登录疯狂Java联盟(http://www.crazyit.org)发帖,笔者将会及时予以解答。 《疯狂iOS讲义(下):iPhone/iPad高级应用与手游开发》为所有打算深入掌握iOS编程的读者而编写,适合各种层次的iOS学习者和开发者阅读,也适合作为大学教育、培训机构的iOS教材。但如果只是想简单涉猎iOS应用开发,则本书过于庞大,不适合阅读。
目录
第1章 多点触摸与手势检测
1.1 响应者链
1.2 响应触碰方法
1.3 使用手势处理器(UIGestureRecognizer)
1.3.1 使用UITapGestureRecognizer处理点击手势
1.3.2 使用UIPinchGestureRecognizer处理捏合手势
实例:通过捏合手势缩放图片
1.3.3 使用UIRotationGestureRecognizer处理旋转手势
实例:通过旋转手势旋转图片
1.3.4 使用UISwipeGestureRecognizer处理轻扫手势
实例:贪食蛇
1.3.5 使用UIPanGestureRecognizer处理拖动手势
1.3.6 使用UILongPressGestureRecognizer处理长按手势
实例:长按添加按钮
1.4 创建和使用自定义手势处理器
1.4.1 开发自定义手势处理器
1.4.2 使用自定义手势处理器
1.5 本章小结
第2章 国际化
2.1 iOS应用国际化的基础
2.1.1 iOS应用的国际化思路
2.1.2 Objective-C国际化支持的语言和国家
2.2 国际化界面设计文件
2.3 国际化应用程序的显示名称
2.4 国际化图片
2.5 国际化文本
2.6 本章小结
第3章 iOS的数据存储与IO
3.1 应用程序沙盒
3.1.1 获取Documents目录
3.1.2 获取tmp目录
3.1.3 文件保存策略思考
3.2 应用程序参数与用户默认设置
3.2.1 使用Settings Bundle
3.2.2 使用NSUserDefaults读取、保存应用程序参数
3.3 属性列表
实例:备忘录
3.4 对象归档和原生I/O API
3.5 使用SQLite 3数据库
3.5.1 iOS的SQLite编程
3.5.2 创建数据库和表
3.5.3 使用SQL语句执行查询
实例:英文生词本
3.5.4 使用sqlite3工具
3.5.5 使用SQLite Manager管理数据库
3.6 使用Core Data框架
3.6.1 Core Data简介
3.6.2 初始化Core Data项目
3.6.3 设计实体模型
3.6.4 使用Core Data实现数据的增、删、改、查
3.6.5 管理实体的关联关系
实例:图书管理系统
3.7 本章小结
第4章 多媒体应用开发
4.1 音频和视频的播放
4.1.1 使用System Sound Services播放音效
4.1.2 使用AVAudioPlayer播放音乐
4.1.3 使用MPMediaPickerController选择系统音乐
实例:简单音乐播放器
4.1.4 使用MPMoviePlayerController播放视频
4.2 使用AVAudioRecorder录制音频
4.3 拍照和录制视频
4.3.1 使用UIImagePickerController拍照和录制视频
4.3.2 使用AVFoundation拍照和录制视频
实例:完全自定义的相机
4.4 使用AVFoundation生成视频缩略图
4.5 本章小结
第5章 管理手机
5.1 使用AddressBook管理联系人
5.1.1 删除联系人
5.1.2 添加联系人
5.1.3 修改联系人
5.2 使用AddressBookUI管理联系人
5.2.1 使用ABNewPersonViewController添加联系人
5.2.2 使用ABUnknownPersonViewController显示未知联系人
5.2.3 使用ABPeoplePickerNavigationController选择联系人
5.2.4 使用ABPersonViewController显示指定联系人
5.3 使用UIApplication打电话、发短信
5.4 使用MFMessageComposeViewController发短信
5.5 使用MFMailComposeViewController发送邮件
5.6 本章小结
第6章 加速计与陀螺仪
6.1 iOS支持的加速计和陀螺仪
6.1.1 iOS加速计和陀螺仪的理论基础
6.1.2 基于代码块方式获取加速度数据、陀螺仪数据、磁场数据
6.1.3 主动请求获取加速度数据、陀螺仪数据、磁场数据
实例:怪物足球
6.2 感知设备移动
实例:水平仪
6.3 iOS 7新增的计步器
6.4 iOS 7新增的CMMotionActivityManager
6.5 本章小结
第7章 多线程
7.1 线程概述
7.1.1 线程和进程
7.1.2 多线程的优势
7.2 使用NSThread实现多线程
7.2.1 创建和启动线程
7.2.2 线程的状态
7.2.3 终止子线程
7.2.4 线程睡眠
实例:使用线程下载网络图片
7.2.5 改变线程优先级
7.3 线程同步与线程通信
7.3.1 线程安全问题
7.3.2 使用@synchronized实现同步
7.3.3 释放对同步监视器的锁定
7.3.4 同步锁(NSLock)
7.3.5 使用NSCondition控制线程通信
实例:生产者-消费者
7.4 使用GCD实现多线程
7.4.1 创建队列
7.4.2 异步提交任务
实例:使用GCD下载图片
7.4.3 同步提交任务
7.4.4 多次执行的任务
7.4.5 只执行一次的任务
7.5 后台运行
7.5.1 进入后台时释放内存
实例:疯狂飞机大战
7.5.2 进入后台时保存状态
7.5.3 请求更多的后台时间
7.6 使用NSOperation与NSOperationQueue实现多线程
7.6.1 使用NSInvocationOperation和NSBlockOperation
实例:使用NSBlockOperation下载图片
7.6.2 定义NSOperation子类
7.7 本章小结
第8章 iOS网络应用编程
8.1 检测网络状态
8.1.1 检查网络状态
8.1.2 监听网络状态改变
8.2 使用CFNetwork实现TCP协议的通信
8.2.1 IP地址与端口号
8.2.2 TCP协议基础
8.2.3 使用CFSocket实现TCP服务器端
8.2.4 使用CFSocket实现TCP客户端
实例:网络聊天程序
8.2.5 使用CocoaAsyncSocket实现TCP客户端
8.3 使用NSURLConnection
8.3.1 使用NSURLConnection从网络获取数据
8.3.2 使用NSMutableURLRequest向服务器发送数据
8.4 XML解析
8.4.1 DOM与SAX
8.4.2 使用NSXMLParser解析XML文档
8.4.3 使用libxml2解析XML文档
8.4.4 使用GDataXML解析XML文档
8.4.5 使用GDataXML生成、修改XML文档
8.5 JSON解析
8.5.1 JSON的基本知识
8.5.2 使用NSJSONSerialization处理JSON数据
8.5.3 使用SBJson解析JSON数据
8.5.4 使用JSONKit解析JSON数据
8.6 使用AFNetworking实现网络通信
8.6.1 提交GET请求与提交POST请求
实例:访问被保护资源
8.6.2 处理JSON或Plist响应
8.6.3 处理XML响应
8.6.4 上传文件
8.7 使用ASIHTTPRequest框架实现网络编程
8.7.1 发送同步或异步的GET请求
8.7.2 使用代码块
8.7.3 使用NSOperationQueue管理请求
8.7.4 发送请求参数和文件上传
实例:天气预报
8.8 本章小结
第9章 使用CoreLocation定位
9.1 iOS的定位支持
9.1.1 GPS卫星定位
9.1.2 基站定位
9.1.3 WiFi定位
9.2 获取定位信息
9.2.1 获取位置信息
9.2.2 使用iOS模拟器模拟位置
9.2.3 监控行车速度和行车距离
9.3 方向监测
实例:指南针
9.4 区域监测
9.5 本章小结
收起 本目录推荐
01
精通ASP.NET MVC4
精通ASP.NET MVC4
弗瑞曼
02jQuery与JavaScript入门经…
03Java3D与计算机三维动态图…
04大学Visual Basic程序设计…
05FORTRAN90语言程序设计上…
06Objective-C编程全解(第…
07JavaScript快速全栈开发
08Activiti实战
09Java Web程序开发范例宝典…