iOS编程(第4版)
iOS编程(第4版)
最新章节:29.2 结束语(-)
《iOS编程》荣获Jolt生产力大奖。第4版更新了iOS7和Xcode5的内容。全书涵盖了开发iOS应用的方方面面。从Objective-C基础知识到新增加的语言特性;从AppKit库到常见的Cocoa设计模式;从Xcode技巧到Instruments等。如果读者刚接触iOS编程,阅读本书前两章可以快速入门。如果读者已经有iOS编程经验,阅读本书可以拾遗补缺。
Christian Keur/Aaron Hillegass《iOS编程(第4版)》全部章节列表
- 第1章 第一个简单的iOS应用
- 1.1 创建Xcode项目
- 1.2 模型-视图-控制器
- 1.3 设计Quiz
- 1.4 创建视图控制器
- 1.5 创建界面
- 1.6 创建关联
- 1.7 创建模型对象
- 1.8 大功告成
- 1.9 在模拟器上运行应用
- 1.10 安装应用
- 1.11 应用图标
- 1.12 启动图片
- 第2章 Objective-C
- 2.1 对象
- 2.2 使用对象
- 2.3 编写命令行工具PandomItems
- 2.4 创建Objective-C类的子类
- 2.5 深入学习NSArray与NSMutableArray
- 2.6 异常与未知选择器
- 2.7 练习
- 2.8 初级练习:查找问题
- 2.9 中级练习:另一个初始化方法
- 2.10 高级练习:另一个类
- 2.11 关于深入学习部分
- 2.12 深入学习:如何为类命名
- 2.13 深入学习:#import和@import
- 第3章 通过ARC管理内存
- 3.1 栈
- 3.2 堆
- 3.3 指针变量与对象所有权
- 3.4 强引用与弱引用
- 3.5 属性
- 3.6 深入学习:属性合成
- 3.7 深入学习:Autorelease池与ARC历史
- 第四章 视图与视图层次结构
- 4.1 视图基础
- 4.2 视图层次结构
- 4.3 创建UIView子类
- 4.4 在drawRect:方法中自定义绘图
- 4.5 关于开发者文档
- 4.6 初级练习:绘制图像
- 4.7 深入学习:Core Graphics
- 4.8 高级练习:阴影和渐变
- 第5章视图:重绘与UIScrollView
- 5.1 运行循环和重绘视图
- 5.2 类扩展
- 5.3 使用UIScrollView
- 第6章 视图控制器
- 6.1 创建UIViewController子类
- 6.2 另一个视图控制器
- 6.3 UITabBarController
- 6.4 视图控制器的初始化方法
- 6.5 添加本地通知
- 6.6 加载和显示视图
- 6.7 与视图控制器及其视图进行交互
- 6.8 初级练习:增加一个标签项
- 6.9 中级练习:控制逻辑
- 6.10 深入学习:键值编码
- 6.11 深入学习:Retina显示屏
- 第7章 委托与文本输入
- 7.1 文本框(UITextField)
- 7.2 委托
- 7.3 协议
- 7.4 向屏幕中添加UILabel对象
- 7.5 运动效果
- 7.6 使用调试器
- 7.7 深入学习:main()与UIApplication
- 7.8 中级练习:捏合-缩放
- 第8章UITableView与UITableViewController
- 8.1 编写Homepwner应用
- 8.2 UITableViewController
- 8.3 UITableView数据源
- 8.4 UITableViewCell对象
- 8.5 代码片段库
- 8.6 初级练习:表格段
- 8.7 中级练习:固定行
- 8.8 高级练习:修改UITableView对象的外观
- 第9章 编辑UITableView
- 9.1 编辑模式
- 9.2 增加行
- 9.3 删除行
- 9.4 移动行
- 9.5 初级练习:更改“删除”按钮的标题
- 9.6 中级练习:禁止移动某个表格行
- 9.7 高级练习:彻底禁止移动某个表格行
- 第10章 UINavigationController
- 10.1 UINavigationController对象
- 10.2 额外的视图控制器
- 10.3 UINavigationController的导航功能
- 10.4 UINavigationBar
- 10.5 初级练习:显示数字键盘
- 10.6 中级练习:关闭数字键盘
- 10.7 高级练习:压入更多视图控制器
- 第11章 相机
- 11.1 通过UIImageView对象显示照片
- 11.2 通过UIImagePickerController拍摄照片
- 11.3 创建BNRImageStore
- 11.4 NSDictionary
- 11.5 创建并使用键
- 11.6 使用BNRImageStore
- 11.7 关闭键盘
- 11.8 初级练习:编辑照片
- 11.9 中级练习:删除照片
- 11.10 高级练习:Camera Overlay
- 11.11 深入学习:导航实现文件
- 11.12 深入学习:摄像
- 第12章 触摸事件与UIResponder
- 12.1 触摸事件
- 12.2 创建TouchTracker应用
- 12.3 实现BNRDrawView,完成绘图功能
- 12.4 处理触摸事件并创建线条对象
- 12.5 初级练习:保存与读取
- 12.6 中级练习:颜色
- 12.7 高级练习:圆圈
- 12.8 深入学习:响应对象链
- 12.9 深入学习:UIControl
- 第13章 UIGestureRecognizer与UIMenuController
- 13.1 UIGestureRecognizer子类
- 13.2 用UITapGestureRecognizer对象识别“按下”手势
- 13.3 同时添加多种触摸手势
- 13.4 UIMenuController
- 13.5 UILongPressGestureRecognizer
- 13.6 UIPanGestureRecognizer以及同时识别多个手势
- 13.7 深入学习:UIMenuController与UIResponderStandardEditActions
- 13.8 深入学习:再谈UIGestureRecognizer
- 13.9 中级练习:修正错误
- 13.10 高级练习:速度与宽度
- 13.11 高级练习:颜色
- 第14章 调试工具
- 14.1 仪表
- 14.2 Instruments
- 14.3 静态分析器
- 14.4 项目、目标和构建设置
- 第15章 自动布局入门
- 15.1 通用化Homepwner
- 15.2 自动布局系统
- 15.3 在Interface Builder中添加约束
- 15.4 调试约束问题
- 15.5 初级练习:打造完美界面
- 15.6 中级练习:通用化Quiz
- 15.7 深入学习:使用_autolayoutTrace方法调试约束问题
- 15.8 深入学习:使用多个XIB文件
- 第16章 在代码中使用自动布局
- 16.1 视觉化格式语言
- 16.2 创建约束
- 16.3 添加约束
- 16.4 固有内容大小
- 16.5 另一种添加方式
- 16.6 深入学习:NSAutoresizingMaskLayoutConstraint
- 第17章 自动转屏,UIPopoverController与模态视图控制器
- 17.1 自动转屏
- 17.2 自动转屏通告机制
- 17.3 UIPopoverController
- 17.4 更多的模态视图控制器
- 17.5 线程安全的单例
- 17.6 初级练习:为另一个类添加线程安全的单例
- 17.7 高级练习:UIPopoverController对象的外观
- 17.8 深入学习:位掩码
- 17.9 深入学习:视图控制器之间的关系
- 第18章 保存、读取与应用状态
- 18.1 固化
- 18.2 应用沙盒
- 18.3 NSKeyedArchiver与NSKeyedUnarchiver
- 18.4 应用状态与状态切换
- 18.5 通过NSData将数据写入文件
- 18.6 NSNotificationCenter和内存过低警告
- 18.7 模型-视图-控制器-存储设计模式
- 18.8 初级练习:PNG
- 18.9 深入学习:应用的状态切换
- 18.10 深入学习:文件系统的读取和写入
- 18.11 深入学习:应用程序包
- 第19章 创建UITableViewCell子类
- 19.1 创建BNRItemCell
- 19.2 处理图片
- 19.3 由UITableViewCell对象转发动作消息
- 19.4 捕获变量
- 19.5 初级练习:设置颜色
- 19.6 高级练习:缩放
- 19.7 深入练习:UICollectionView
- 第20章 动态字体
- 20.1 使用用户首选字体
- 20.2 响应用户首选字体的改变
- 20.3 修改自动布局约束
- 20.4 确定用户首选字体大小
- 20.5 修改BNRItemCell
- 第21章 Web服务与UIWebView
- 21.1 Web服务
- 21.2 UIWebView
- 21.3 认证信息
- 25.4 中级练习:加强UIWebView
- 21.5 高级练习:课程预告
- 21.6 深入学习:HTTP请求主体
- 第22章 UISplitViewController
- 22.1 在Nerdfeed中使用UISplitViewController
- 22.2 在竖排模式下显示主视图控制器
- 22.3 将Nerdfeed改为通用应用
- 第23章 Core Data
- 23.1 对象-关系映射
- 23.2 用Core Data重写BNRItemStore的数据保存功能
- 23.3 再谈SQL
- 23.4 Faults
- 23.5 各种存取机制的优缺点
- 23.6 初级练习:Asset的iPad界面
- 23.7 中级练习:增加BNRAssetType对象
- 23.8 高级练习:显示某种类型的BNRItem对象
- 第24章 状态恢复
- 24.1 状态恢复的工作原理
- 24.2 启用状态恢复
- 24.3 恢复标识和恢复类
- 24.4 状态恢复与应用生命周期
- 24.5 恢复视图控制器
- 24.6 编码状态数据
- 24.7 保存视图状态
- 24.8 中级练习:为另一个应用启用状态恢复
- 24.9 深入学习:设置快照
- 第25章 本地化
- 25.1 通过NSNumberFormatter实施国际化
- 25.2 资源的本地化
- 25.3 NSLocalizedString()与字符串对照表
- 25.4 初级练习:再添加一套本地化资源
- 25.5 深入学习:NSBundle在国际化过程中的作用
- 25.6 深入学习:不通过基础国际化对XIB文件实施本地化
- 第26章 NSUserDefaults
- 26.1 NSUserDefaults
- 26.2 设置束
- 第27章 控制动画
- 27.1 基础动画
- 27.2 关键帧动画
- 27.3 在动画完成后执行特定的代码
- 27.4 弹簧动画
- 27.5 中级练习:提升Quiz的用户体验
- 第28章 UIStoryboard
- 28.1 创建Storyboard文件
- 28.2 Storyboard文件中的UITableViewController
- 28.3 Segue
- 28.4 改变颜色
- 28.5 传递数据
- 28.6 Storyboards的优缺点
- 28.7 深入学习:状态恢复
- 第29章 后记
- 29.1 接下来做什么
- 29.2 结束语