您现在的位置:首页 > 知识库 > 计算机与软件 >iOS SDK编程实战
iOS SDK编程实战

iOS SDK编程实战

资料大小: 175.67 MB
文档格式: PDF文档
资料语言: 简体中文
资料类别: 计算机与软件
更新日期: 2020-04-03
下载说明:
推荐信息: 编程   实战   iOS   SDK   2014

本地下载(30点)  备用下载(30点)

内容简介
iOS SDK编程实战
出版时间:2014年版
内容简介
  《iOSSDK编程实战》是初学者进入iOS开发领域的敲门砖;是让身为程序员的读者可以早点完成工作,早日让自己的App上架赚大钱;是开发者必备的学习手册和学以致用的权威指南。《iOSSDK编程实战》除了一般iOS程序设计书籍比较常见的基本技术,如Objective-C与MVC设计模式的内容外,在本书的后半段着重介绍页面的连贯与页面管理,包括利用Storyboard与ViewController的交互,做到多样化、层级与一致的页面呈现,Storyboard的设计样式让设计App就像在讲故事,连贯而顺畅,这同时也是iOS开发最经典的地方之一。另外,在多媒体实现、触控动画及图像处理等内容中,读者可以从实例演练中学到iOS程序开发的概念与技巧,达到事半功倍的效果,并学会自行扩展iOS程序开发技能的深度和广度,注入个人的创意,创造出全新的价值。《iOSSDK编程实战》适合iOS初学者阅读,也适合程序员使用,以及作为大专院校的师生用书和相关培训学校的教材。
目录
第一篇 iOS开发基础知识
第0章 在项目开发之前
0.1 知识的准备
0.2 软件的准备
0.3 硬件的准备
0.4 设计模式的准备
0.4.1 Model-View-Controller设计模式
0.4.2 Delegation设计模式
0.4.3 Target-Action设计模式
总结
第1章 Xcode与开发环境
1.1 OS X与开发相关的特点
1.1.1 使用Dock启动应用程序与查看状态
1.1.2 使用Finder来显示文件和目录的结构与信息
1.1.3 使用Spotlight来快速搜索文件
1.1.4 使用terminal来进行文本模式的命令行操作
1.2 认识Xcode与开发环境
1.2.1 Xcode的偏好设置
1.2.2 Xcode的工作空间
1.3 开发设备管理
1.4 程序代码库管理
1.5 项目目录管理
1.6 存档目标管理
1.7 说明文件管理
总结
第2章 Objective-C与对象基础
2.1 命令行模式项目与Foundation框架
2.2 Objective-C的类
2.2.1 类的声明
2.2.2 类的成员变量与函数
2.2.3 实现类的成员函数
2.2.4 声明与实现的切换
2.2.5 函数的多参数
2.3 Objective-C的对象实例
2.3.1 对对象发送消息
2.3.2 从类生成对象
2.4 使用静态程序分析器
2.4.1 静态程序代码分析
2.4.2 对象的管理与retaincount(保留计数器)
2.4.3 释放分配的内存
2.5 Property(属性)的定义
2.5.1 属性的声明
2.5.2 属性的实现
2.5.3 设值函数的属性
2.5.4 @property能设定的其余属性
2.6 Objective-C中的字符串
2.6.1 字符串的声明
2.6.2 使用格式化字符串来动态产生字符串的内容
总结
第3章 iOS应用程序与生命周期
3.1 创建一个空白的iOS项目
3.1.1 使用项目向导生成iOS空白项目
3.1.2 iOS项目的运行
3.1.3 委托的设计模式
3.1.4 委托类与应用程序生命周期的建立
3.2 XIB文件与Model View Controller(MVC)设计模式
3.2.1 使用项目向导生成单一视角应用程序(Single View Application)
3.2.2 xib版面配置文件与MVC的设计样式
3.3 Storyboard的版面配置文件
3.3.1 应用程序的初始化与plist文件
3.3.2 Storyboard的操作与MVC的设计模式
3.4 实现MVC界面
3.4.1 新增应用程序初始主界面文件
3.4.2 在界面文件中加载View Controller组件
3.4.3 实现定制化View Controller组件
总结
第4章 Objective-C进阶
4.1 iOS与协议Protocol
4.1.1 声明协议与要实现的函数
4.1.2 由其他对象实现的函数
4.1.3 协议之间的引用
4.2 Collection框架
4.2.1 CocoaTouch中的Collection
4.2.2 使用数组(NSArray)来存取顺序的数据
4.2.3 使用NSArray来定义不可变的数组
4.2.4 使用快速枚举(FastEnumeration)的方式获取对象
4.2.5 使用NSMutableArray来定义可变大小的数组
4.2.6 使用Set来存取不可重复的数据
4.2.7 使用NSSet定义不可变的Set
4.2.8 使用NSMutableSet定义可变大小的集合
4.2.9 使用NSCountedSet来获取重复对象的数量
4.2.10 使用键值存取Dictionary中的内容
4.2.11 使用NSDictionary定义不可变的dictionary
4.2.12 使用NSMutableDictionary定义可变的dictionary
4.2.13 使用NSIndexSet来获取数组的任意索引值
4.2.14 在NSMutableIndexSet中新增区域
4.2.15 在NSMutableIndexSet中删除区域
总结
第5章 用户界面设计
5.1 认识Xcode的界面编辑器与开发用户界面
5.2 使用IBAction与IBOutlet链接程序和用户界面
5.2.1 连接用户界面与IBOutlet变量
5.2.2 从用户界面生成IBOutlet变量
5.2.3 链接用户界面与IBAction函数
5.2.4 从用户界面产生IBAction函数
5.3 处理文本框
5.3.1 文本框和虚拟键盘
5.3.2 让文本框能与程序交互
5.4 设置组件的位置和大小
5.5 使用代码生成组件
5.5.1 利用代码生成文本框
5.5.2 按照对象的标识符来判定不同的文本框并做出反应
5.5.3 标签的属性设定
5.5.4 设定按钮组件的属性
5.5.5 IBAction和IBOutlet的交互
总结
第二篇 页面的切换
第6章 实现多界面应用程序
6.1 公用程序模板应用程序
6.1.1 新增公用程序模板应用程序
6.1.2 从应用程序模板向导新增使用storyboard的公用程序(Utility Application)
6.2 标签式模板应用程序
6.2.1 在xib下新增一个标签页面
6.2.2 在storyboard下新增标签页面
6.2.3 连接storyboard和类文件,用代码控制用户界面
6.2.4 多标签的处理
6.2.5 标签栏模板的图标处理
6.3 页面模板应用程序
6.4 具备主从关系的模板文件
6.4.1 数据的新增/删除
6.4.2 应用程序的生命周期
6.4.3 主从关系的storyboard项目模板
总结
第7章 页面管理
7.1 使用View Controller进行页面的旋转和转置
7.1.1 xib中可视化组件旋转后的摆放
7.1.2 适应不同屏幕而提供不同的xib组件
7.2 使用UINavigation Controller(导航控制器)进行多页面的顺序遍历
7.2.1 导航控制器的基本操作
7.2.2 在单一视角项目(Single View Project)中新增导航栏
7.2.3 xib中对导航栏的模拟
7.2.4 在标签栏项目中新增导航栏
7.2.5 利用UINavigationController进行页面切换
7.3 导航栏的应用
7.3.1 使用导航栏进入View Controller的编辑模式
7.3.2 自定义导航栏的按钮
7.3.3 导航栏的工具栏
7.3.4 导航栏工具栏的自定义按钮
7.4 建立滚动条窗口组件
7.4.1 新增滚动条组件
7.4.2 在滚动条组件中新增内容
7.5 取得委托对象的实例
总结
第8章 使用Storyboard进行界面设计
8.1 从xib到storyboard
8.2 在空白项目中使用storyboard
8.2.1 新增storyboard文件
8.2.2 设定项目主要的storyboard文件
8.2.3 storyboard的操作
8.2.4 连接storyboard和View Controller
8.2.5 修改默认项目并运行
8.2.6 导航栏与storyboard
8.2.7 标签栏与storyboard
8.3 storyboard与View Controller的交互
8.3.1 在场景中加入用户交互组件
8.3.2 载入storyboard中单独的View Controller
8.3.3 载入外部xib的View Controller
8.4 在Scene中使用Segue设定界面的连贯
8.4.1 Modal类型的Segue
8.4.2 Push类型的Segue
8.5 Segue与数据传递
8.6 从程序中驱动Segue
8.7 Storyboard和静态表格
8.7.1 设定静态表格的类型
8.7.2 分栏与区域标题结尾
8.7.3 静态表格与Segue
8.8 Segue与动态切换
总结
第三篇 常用的Cocoa Touch框架
第9章 实现多语言支持
9.1 iOS下多语言的设定
9.2 多语言字符串的处理
9.2.1 新增字符串文件
9.2.2 编写字符串文件
9.2.3 多语言测试时的错误排除
9.3 从现有程序产生多语言字符串资源文件
9.4 使用多语言的注释
9.5 取得默认的语言
9.6 xib文件的多语言
9.6.1 多语言xib文件的选择
9.6.2 多语言xib文件的实现
总结
第10章 iOS应用程序的常用行为
10.1 调用的系统URL
10.1.1 调用应用程序自定义的URLScheme
10.1.2 调用浏览器Safari浏览链接
10.1.3 发送E-mail的调用
10.1.4 拨打电话的调用
10.1.5 发送短信的调用
10.1.6 访问地图的调用
10.1.7 播放优酷视频
10.1.8 打开App Store的调用
10.2 操作用户偏好来存放应用程序的常用设定
10.2.1 认识「设定」应用程序
10.2.2 定义用户偏好值
10.2.3 用户偏好的图标
10.2.4 用户偏好的多语言界面
10.2.5 plist文件的编辑方式
10.2.6 新增用户偏好的组
10.2.7 用户偏好的文字字段
10.2.8 用户偏好的选项界面
10.2.9 用户偏好的开关选项
10.2.10 用户偏好的标题选项
10.2.11 用户偏好的滑杆选项
10.2.12 用户偏好的子选项
10.3 读取用户偏好的设定值
10.3.1 使用NSUserDefaults类读取用户偏好
10.3.2 检测用户偏好的变更
10.3.3 使用NSUserDefaults类设定用户偏好
10.3.4 用户偏好值的调试
总结
第11章 表格的使用
11.1 使用UITableViewController
11.2 使用datasource定义表格的数据
11.2.1 定制化表格的内容
11.2.2 表格单元格的附属类型
11.2.3 表格的编辑模式
11.3 表格的delegate对象
11.3.1 新增表格的内容
11.3.2 删除表格的内容
总结
第12章 使用CoreData
12.1 Core Data的架构
12.2 在程序中加入Core Data的功能
12.3 新增数据
12.4 查询数据
12.5 删除数据
12.6 修改数据
总结
第13章 文件存取与多线程
13.1 存取应用程序目录中的文件
13.1.1 使用NSBundle存取应用程序中的文件
13.1.2 读取Bundle中的文字
13.1.3 Bundle和Retina资源的准备
13.2 应用程序的文件和外部的交互
13.3 使用定时组件在特定时间执行程序
13.3.1 使用NSTimer定时组件
13.3.2 只执行一次的定时器
13.3.3 在NSTimer中传入参数
13.3.4 持续执行的定时器
13.3.5 结合定时器和Run Loop
13.4 使用多线程进行异步执行
13.4.1 使用NSThread新增线程并执行
13.4.2 在线程中使用参数
13.5 操作对象和操作队列
13.5.1 使用NSInvocationOperation建立操作对象
13.5.2 继承NSOperation类建立操作对象
13.5.3 操作对象之间的依赖关系
总结
第14章 Block与GCD
14.1 定义与实现Block
14.1.1 从函数到Block
14.1.2 typedef和block变量
14.1.3 Block所能存取的变量
14.1.4 Block中变量的设值与block变量
14.1.5 使用Block存取静态变量
14.1.6 Block的语法
14.2 Block的调试
14.3 Block的应用
14.3.1 Block用于viewcontroller
14.3.2 在Collection中使用Block
14.3.3 Block用于字典的循环
14.3.4 Block应用于集合(Set)的循环
14.3.5 用于数组中对象的排序
14.3.6 Block用于数组中对象的过滤
14.4 使用GCD执行block代码
14.4.1 GCD与Block
14.4.2 取得主线程的队列并顺序执行
14.4.3 取得其他执行的队列
14.4.4 同步执行队列的注意事项
14.4.5 GCD与并行执行
14.4.6 延迟执行block
总结
第四篇 绘图、触控与多媒体
第15章 使用CoreGraphic绘制图形
15.1 绘图的概念
15.1.1 绘图上下文
15.1.2 CoreGraphic的基本类型与运算
15.2 使用UIView进行绘图
15.2.1 UIView的绘图周期
15.2.2 UIView和绘图上下文
15.2.3 在UIView中绘制贝兹路径(BezierPath)
15.2.4 路径的填充和样式
15.2.5 绘制圆弧与曲线与路径端点
15.2.6 路径和转换运算
15.2.7 绘制贝塞尔曲线
15.2.8 使用CoreGraphics函数进行绘图
15.2.9 使用CurrentTransformMatrix进行绘图坐标转换
15.2.10 填充的顺序与色彩的调和
总结
第16章 切换效果与动画
16.1 使用切换动画切换画面
16.1.1 单一窗口的切换动画
16.1.2 从一窗口组件切换到另一个窗口组件
16.2 使用UIView制作基础动画
16.2.1 取得UIView下的CALayer进行动画
16.2.2 同时执行两个属性的动画或先后执行两个属性的动画
16.2.3 动画的参数与重复循环
16.2.4 多重动画的使用
16.2.5 取得UIView下的CALayer进行动画
16.3 使用CALayer制作动画
16.3.1 建立CALayer进行不需明确声明的动画
16.3.2 使用CAShapeLayer建立几何动画图层
16.3.3 使用CATextLayer建立文字动画图层
16.3.4 使用CAReplicatiorLayer建立样式重复的对象
16.4 使用Core Animation进行明确声明的动画
16.4.1 使用CABasicAnimation实现线性改变属性的动画
16.4.2 使用CAMediaTiming类进行动画属性的控制
16.4.3 设定动画的委托对象与委托函数控制
16.4.4 使用CAKeyFrameAnimation进行关键界面的设定
16.4.5 在明确的动画声明中同步使用多重动画属性
16.4.6 动画执行完成后的响应与顺序动画
16.5 在CALayer的2.5度空间制作动画
16.5.1 Z轴的变换与视点的建立
16.5.2 三度空间的旋转
总结
第17章 触控
17.1 触控与事件
17.1.1 UITouch触控事件类
17.1.2 结合触控与用户界面
17.2 触控区域的判定
17.3 触控与手势
17.3.1 位移的手势识别
17.3.2 滑动的手势识别
17.3.3 旋转的手势识别
17.3.4 缩放的手势识别
17.3.5 点击的手势识别
17.3.6 长按的手势识别
17.3.7 识别器的委托函数
17.3.8 多重识别器的合并使用
17.4 多点触控
17.5 结合触控与绘图
总结
第18章 相机和滤镜
18.1 图片集与相片
18.1.1 UIImagePickerController的初始化
18.1.2 使用相机功能
18.1.3 UIImagePickerController的委托对象
18.1.4 储存相机提取的界面
18.2 CoreImage与滤镜
18.2.1 滤镜与影像
18.2.2 内建的滤镜
18.2.3 滤镜的属性
18.3 滤镜的使用
18.3.1 使用CIColorInvert色彩反转滤镜
18.3.2 使用CISepiaTone深褐色调滤镜
18.3.3 使用CIHueAdjust色彩调整滤镜
18.3.4 使用CIVignette渐变滤镜
18.3.5 使用CICheckterboardGenerator产生棋盘效果
18.3.6 使用滤镜混合图形
18.4 多重滤镜的使用
总结
第19章 影音播放
19.1 声音播放
19.1.1 使用AVAudioPlayer框架
19.1.2 取得声音文件的信息
19.1.3 播放多重音轨
19.1.4 AVAudioPlayer的委托对象与中断处理
19.1.5 在后台执行音乐
19.2 影片播放
19.2.1 使用MPMoviePlayerController类播放影片
19.2.2 播放流媒体影音
19.2.3 使用AVPlayer类播放影片
19.2.4 影片与外接屏幕
总结
第五篇 地图与网络存取
第20章 地图与GPS
20.1 使用MKMapView显示地图
20.1.1 地理信息相关的数据结构
20.1.2 在MapView中设定位置
20.1.3 在MapView移动中心点
20.1.4 使用MKMapPoint标记地图
20.1.5 地图的响应函数
20.2 地图的标记
20.2.1 建立遵循MKAnnotation协议的对象
20.2.2 使用MKAnnotationView自定义地标
20.2.3 设定加入产生的地标之后的响应函数
20.2.4 地标详细信息
20.2.5 地点标记的拖曳与移动
20.3 取得用户位置的标记
20.4 地图与定制化图层
20.4.1 绘制圆形的地图图层
20.4.2 绘制多边形线段的地图图层
20.4.3 绘制多边形的地图图层
20.5 使用地理信息编码
总结
第21章 常用的网络存取功能
21.1 显示网页
21.1.1 使用UIWebView
21.1.2 使用UIWebViewDelegate查看网页内容
21.2 同步与异步的数据存取
21.2.1 使用NSURLConnection执行异步调用
21.2.2 使用NSURLConnection执行同步调用
21.2.3 同步调用与GCD的异步执行
21.3 读取JSON格式
21.3.1 将Foundation对象转成JSON对象
21.3.2 从网络上读取JSON对象
21.4 整合Facebook
21.4.1 下载FacebookSDK
21.4.2 设定Facebook应用程序并取得AppID
21.4.3 初始化Facebook对象
21.4.4 实现Facebook的登入与注销
总结