iOS开发从入门到精通

企业采购书卡请拔打028-83157469,团购书目请拨打19113427458(法定工作日9:00-17:00)

定  价 :
¥ 108.00
文 轩 价 :
¥90.70 (8.4折)
库  存 :
库存紧张
作  者 :
刘燕 编著
所属分类 :
图书 > 行业职业 > 计算机 > 操作系统
促销活动 :
❤图书音像单笔满100减30!(特价图书、电子书除外)
❤老客户回馈,积分换礼券,购书更实惠
❤图书订单满39元包邮,不足收取运费6元(新疆西藏运费每单20元)
详情 >>
购买数量 :
- +
立即购买
服  务 :
由"文轩网"直接销售和发货,并提供售后服务
正品低价| 闪电发货|货到付款| 高效退换货
  • 作 者: 刘燕 编著
  • 出版社: 清华大学出版社
  • 出版时间:2017-10-01
  • 开 本:16开
  • 页 数:868
  • 印刷时间:2017-10-01
  • 字 数:1591千字
  • 装 帧:平装
  • 语  种:中文
  • 版 次:1
  • 印 次:1
  • I S B N:9787302448662

目录

目 录: 第1章 iOS基础 视频讲解:23分钟 1.1 iOS发展历史 1.2 iOS特性 1.3 iOS架构 1.3.1 Cocoa Touch层 1.3.2 媒体层 1.3.3 Core Services层 1.3.4 Core OS层 1.4 Objective-C概述 1.5 比较iOS和Mac OS 1.5.1 UIKit与AppKit的对比 1.5.2 Foundation框架的差异 1.5.3 其他框架的改变 1.6 iOS开发环境和工具 1.6.1 了解Xcode 1.6.2 Xcode导航面板 1.6.3 Xcode检查器面板 1.6.4 Xcode库面板 1.6.5 使用帮助 1.7 使用Xcode 1.7.1 案例:编写第一个Objective-C程序 1.7.2 案例:创建第一个项目 1.8 小结 第2章 数据类型和运算符 视频讲解:88分钟 2.1 数据类型分类 2.2 简单数据类型 2.2.1 整型 2.2.2 案例:输出格式字符 2.2.3 浮点型 2.2.4 字符型 2.2.5 案例:定义字符串 2.2.6 枚举型 2.2.7 布尔型 2.3 类型转换 2.3.1 案例:自动类型转换 2.3.2 案例:强制类型转换 2.3.3 案例:自动提升 2.4 运算符 2.4.1 运算符分类 2.4.2 运算优先级 2.4.3 算术运算符 2.4.4 赋值运算符 2.4.5 位运算符 2.4.6 比较运算符 2.4.7 逻辑运算符 2.4.8 逗号运算符 2.4.9 条件运算符 2.5 小结 第3章 控制语句 视频讲解:44分钟 3.1 条件语句 3.1.1 if语句 3.1.2 案例:分支语句应用 3.1.3 switch语句 3.2 循环语句 3.2.1 while语句 3.2.2 do-while语句 3.2.3 for语句 3.2.4 案例:for语句应用 3.2.5 案例:嵌套循环 3.3 控制语句 3.3.1 break语句 3.3.2 continue语句 3.3.3 return语句 3.3.4 案例:使用goto语句 3.4 预处理命令 3.4.1 宏定义 3.4.2 运算符 3.4.3 #import语句 3.4.4 条件编译 3.5 小结 第4章 C语言特性 视频讲解:122分钟 4.1 数组 4.1.1 定义数组 4.1.2 初始化数组 4.1.3 使用数组 4.1.4 定义多维数组 4.1.5 初始化多维数组 4.1.6 使用字符数组 4.1.7 案例实战 4.2 函数 4.2.1 定义函数 4.2.2 声明函数 4.2.3 函数类型 4.2.4 函数参数 4.2.5 函数返回值 4.2.6 案例实战 4.3 块 4.3.1 定义块 4.3.2 块作用域 4.3.3 使用块变量类型 4.4 结构 4.4.1 定义结构 4.4.2 使用typedef 4.4.3 初始化结构 4.4.4 使用结构体数组 4.4.5 嵌套结构 4.5 指针 4.5.1 认识指针 4.5.2 定义指针变量 4.5.3 指针的基本运算 4.5.4 指针变量作为函数参数 4.5.5 对象和指针的关系 4.6 数组和指针 4.6.1 指向数组的指针变量 4.6.2 指针运算 4.6.3 案例实战 4.7 案例应用 4.7.1 使用字符串指针 4.7.2 使用函数指针 4.8 小结 第5章 类 视频讲解:107分钟 5.1 定义类 5.1.1 认识类 5.1.2 接口 5.1.3 实现 5.1.4 案例:定义类 5.2 使用类 5.2.1 实例化 5.2.2 指针 5.2.3 self 5.2.4 id类型 5.2.5 类名的使用 5.2.6 类的比较 5.3 变量 5.3.1 局部变量 5.3.2 全局变量 5.3.3 实例变量 5.3.4 静态变量 5.3.5 变量的存储类别 5.3.6 案例:定义单例类 5.3.7 案例:定义类变量 5.4 属性 5.4.1 属性的声明 5.4.2 属性的实现 5.4.3 属性类型和相关函数 5.4.4 属性类型编码 5.4.5 属性重声明 5.4.6 子类中的属性 5.4.7 案例:使用封装 5.4.8 案例:使用访问控制符 5.4.9 案例:合成存取 5.4.10 案例:点语法存取 5.5 方法 5.5.1 定义方法 5.5.2 方法的所属性 5.5.3 案例:设计可变形参的方法 5.6 继承 5.6.1 继承实例变量 5.6.2 方法的继承 5.6.3 方法的重写 5.6.4 类别和扩展 5.6.5 案例:类继承 5.6.6 案例:重写 5.6.7 案例:使用super关键字 5.7 异常处理 5.7.1 启用异常处理 5.7.2 异常处理 5.7.3 捕捉不同类型的异常 5.7.4 抛出异常 5.8 类型 5.8.1 静态指定类型 5.8.2 类型的自查 5.9 根类 5.9.1 NSObject简介 5.9.2 根类和协议 5.9.3 根类方法 5.9.4 根类接口规范 5.9.5 根类实例方法和类方法 5.10 小结 第6章 消息和协议 6.1 消息 6.1.1 定义消息 6.1.2 发送消息 6.1.3 接收实例变量 6.1.4 获取方法地址 6.1.5 objc_msgSend()函数 6.1.6 使用隐藏的参数 6.1.7 消息转发 6.1.8 消息转发与多重继承 6.1.9 消息代理对象 6.1.10 消息转发与类继承 6.1.11 多态性 6.1.12 动态绑定 6.1.13 解析动态方法 6.1.14 动态加载 6.1.15 “.”语法格式 6.2 协议 6.2.1 预定义声明接口 6.2.2 预定义方法 6.2.3 声明接口 6.2.4 非层级相似性 6.2.5 正式协议 6.2.6 非正式协议 6.2.7 协议对象 6.2.8 采用协议 6.2.9 服从协议 6.2.10 类型校验 6.2.11 嵌套协议 6.2.12 引用其他协议 6.3 小结 第7章 对象 7.1 创建对象 7.1.1 分配对象 7.1.2 初始化对象 7.1.3 dealloc方法 7.1.4 类工厂方法 7.2 对象动态类型 7.3 对象可变性 7.3.1 可变或不可变对象 7.3.2 用可变对象编程 7.4 对象通信 7.4.1 面向对象程序中的通信 7.4.2 IBoutlet变量 7.4.3 委托和数据源 7.4.4 目标-动作机制 7.4.5 绑定 7.4.6 通告 7.5 使用对象 7.5.1 对象所有权策略 7.5.2 保留计数 7.5.3 自动释放 7.5.4 共享对象的有效性 7.5.5 存取方法 7.5.6 回收对象 7.5.7 通过引用返回的对象 7.6 小结 第8章 Foundation框架基础 视频讲解:133分钟 8.1 认识Foundation框架 8.2 使用Foundation框架 8.3 数字类型 8.3.1 数字类型类NSNumber 8.3.2 比较int、NSInteger、NSUInteger和NSNumber 8.4 字符串类型 8.4.1 不可变字符串类NSString 8.4.2 可变字符串类NSMutableString 8.4.3 案例实战 8.5 日期类型 8.5.1 日期类型类NSDate 8.5.2 NSCalendar和NSDateComponents 8.5.3 案例实战 8.6 数组类型 8.6.1 不可变数组类NSArray 8.6.2 可变数组类NSMutableArray 8.6.3 多维数组 8.6.4 案例:操作数组 8.6.5 案例:操作元素 8.6.6 案例:数组排序 8.6.7 案例:遍历数组 8.6.8 案例:快速枚举 8.6.9 案例:可变数组 8.7 字典类型 8.7.1 不可变字典类NSDictionary 8.7.2 可变字典类NSMutableDictionary 8.7.3 案例:使用字典 8.7.4 案例:字典排序 8.7.5 案例:字典过滤 8.7.6 案例:使用可变字典 8.8 案例实战:集合类型 8.8.1 使用NSSet 8.8.2 检测NSSet重复值 8.8.3 可变集合 8.8.4 计数集合 8.8.5 有序集合 8.9 小结 第9章 iOS应用开发核心 9.1 iOS应用架构 9.1.1 生命周期 9.1.2 主函数 9.1.3 应用委托 9.1.4 nib文件 9.1.5 事件处理周期 9.1.6 基本设置模式 9.2 运行环境处理机制 9.2.1 快速启动 9.2.2 安全处理 9.2.3 内存处理 9.2.4 节电处理 9.3 程序包 9.3.1 信息属性 9.3.2 程序图标和启动图像 9.4 定制行为 9.4.1 景观模式启动 9.4.2 与其他程序通信 9.4.3 URL模式 9.4.4 处理URL请求 9.4.5 偏好设置 9.4.6 关闭锁定 9.5 键盘管理 9.5.1 接收键盘通告 9.5.2 显示键盘 9.5.3 取消键盘 9.5.4 移动键盘 9.6 国际化 9.7 优化处理 9.7.1 不要阻塞主线程 9.7.2 有效使用内存 9.7.3 减少内存印迹 9.7.4 恰当分配内存 9.7.5 浮点运算 9.7.6 减少电力消耗 9.7.7 代码优化 9.8 小结 第10章 iOS开发入门 视频讲解:63分钟 10.1 熟悉iOS项目 10.1.1 文件结构 10.1.2 新建xib界面文件 10.1.3 认识xib界面 10.1.4 添加控件 10.1.5 编辑控件属性 10.1.6 UIView属性 10.1.7 UILabel属性 10.2 iOS运行机制 10.2.1 了解MVC 10.2.2 入口函数 10.2.3 应用程序委托 10.2.4 视图控制器 10.3 事件处理机制 10.3.1 获取控件 10.3.2 事件处理 10.4 故事板 10.5 案例实战 10.5.1 动态更新文本 10.5.2 添加和删除控件 10.5.3 设计跟随手指的小球 10.5.4 设计应用项目图标 10.5.5 设计欢迎界面 10.6 小结 第11章 窗口和视图 11.1 认识窗口和视图 11.1.1 窗口 11.1.2 视图 11.1.3 视图控制器 11.2 视图架构 11.2.1 视图交互模型 11.2.2 视图渲染架构 11.2.3 Core Animation 11.2.4 视图的层 11.2.5 动画支持 11.2.6 视图坐标系统 11.2.7 边框、边界和中心 11.2.8 坐标系统变换 11.2.9 内容模式与比例缩放 11.2.10 自动尺寸调整 11.3 创建和管理视图层次 11.3.1 视图层次 11.3.2 创建视图对象 11.3.3 添加和移除子视图 11.3.4 坐标转换 11.3.5 标识视图 11.4 动态控制视图 11.4.1 实现视图动画 11.4.2 配置动画的参数 11.4.3 配置动画的委托 11.4.4 响应布局的变化 11.4.5 重画视图的内容 11.4.6 隐藏视图 11.5 创建定制视图 11.5.1 初始化定制视图 11.5.2 描画视图内容 11.5.3 响应事件 11.5.4 清理视图对象 11.6 小结 第12章 视图控制器 视频讲解:43分钟 12.1 视图控制器基础 12.1.1 视图控制器的功能 12.1.2 屏幕、窗口和视图元素 12.1.3 视图管理机制 12.1.4 视图控制器分类 12.1.5 内容展示方式 12.1.6 视图控制器混合应用 12.2 视图控制器生命周期 12.2.1 初始化视图 12.2.2 加载和卸载视图 12.3 标准视图控制器 12.3.1 标准视图控制器概述 12.3.2 使用标准视图控制器 12.4 分割视图控制器 12.4.1 分割视图控制器概述 12.4.2 使用分割视图控制器 12.5 导航控制器 12.5.1 导航控制器概述 12.5.2 使用导航控制器 12.6 选项卡控制器 12.6.1 选项卡控制器概述 12.6.2 使用选项卡控制器 12.7 页视图控制器 12.7.1 页视图控制器概述 12.7.2 使用页视图控制器 12.8 小结 第13章 事件 13.1 触摸事件 13.1.1 触摸模型 13.1.2 触摸与事件 13.1.3 事件传递 13.1.4 事件响应过程 13.1.5 事件处理方法 13.1.6 案例:处理多点触摸事件 13.1.7 案例:检测碰擦手势 13.1.8 案例:处理复杂多点触摸序列 13.2 运动事件 13.3 复制、剪切和粘贴 13.3.1 认识粘贴板 13.3.2 数据表示 13.3.3 选择菜单 13.3.4 复制和剪切 13.3.5 粘贴 13.3.6 消除菜单 13.4 小结 第14章 使用控件(上) 视频讲解:117分钟 14.1 UIKit概述 14.1.1 视图分类 14.1.2 应用界面构成 14.1.3 UIView视图 14.1.4 UIControl控件 14.2 按钮 14.2.1 添加按钮 14.2.2 案例:定义按钮 14.2.3 案例:配合使用标签和按钮 14.3 文本框 14.3.1 添加文本框 14.3.2 案例:设计登录表单 14.3.3 案例:关闭虚拟键盘 14.4 多行文本 14.4.1 添加多行文本框 14.4.2 案例:设计内容简介表单 14.4.3 案例:设计导航按钮控制虚拟键盘 14.4.4 案例:自定义虚拟键盘键 14.4.5 案例:自定义快捷编辑菜单 14.5 开关按钮 14.5.1 添加开关按钮 14.5.2 案例:使用开关按钮控制界面背景 14.6 分段控件 14.6.1 添加分段控件 14.6.2 案例:使用分段控件控制界面背景 14.6.3 案例:动态控制分段控件 14.7 滑块控件 14.7.1 添加滑块控件 14.7.2 案例:设计控件 14.7.3 案例:使用滑块控制透明度 14.8 图像控件 14.8.1 添加图像控件 14.8.2 案例:预览图片 14.8.3 案例:设计幻灯片 14.9 进度条 14.9.1 添加进度条 14.9.2 案例:设计进度条 14.10 活动指示器 14.10.1 添加活动指示器 14.10.2 案例:设计活动指示器和进度条 14.11 警告框 14.11.1 创建警告框 14.11.2 案例:设计警告框 14.12 操作表 14.13 日期选择器 14.13.1 添加日期选择器 14.13.2 案例:设计即将开始 14.14 通用选择器 14.14.1 添加通用选择器 14.14.2 案例:设计单列选择器 14.14.3 案例:自定义选择器视图 14.15 微调器 14.15.1 添加微调器 14.15.2 案例:设计微调器 14.16 网页控件 14.16.1 添加网页控件 14.16.2 案例:设计网页控件 14.17 小结 第15章 使用控件(下) 视频讲解:117分钟 15.1 工具条 15.1.1 添加工具条 15.1.2 案例:设计工具条 15.2 搜索条 15.2.1 添加搜索条 15.2.2 案例:设计搜索条 15.2.3 案例:设计显示列表 15.3 导航条 15.3.1 使用导航条 15.3.2 案例:使用UINavigationController 15.4 表格控制器 15.4.1 表视图概述 15.4.2 添加表格 15.4.3 自定义单元格 15.4.4 案例:设计表格 15.4.5 案例:编辑单元格 15.4.6 案例:编辑表格 15.4.7 案例:表格分区 15.5 标签页 15.5.1 使用UITabBar 15.5.2 案例:设计标签页1 15.5.3 案例:设计标签页2 15.6 页控件 15.6.1 分页控件 15.6.2 案例:使用UIPageControl 15.6.3 案例:使用UIPageViewController 15.7 小结 第16章 移动绘图 视频讲解:35分钟 16.1 基本概念 16.1.1 绘制周期 16.1.2 坐标系统 16.1.3 图形上下文 16.1.4 点和像素 16.1.5 颜色空间 16.1.6 图像格式 16.1.7 定制绘制 16.1.8 绘制性能 16.1.9 图像质量 16.2 Quartz 2D 16.2.1 页面 16.2.2 图形上下文 16.2.3 路径 16.2.4 颜色空间 16.2.5 变换 16.2.6 阴影 16.2.7 梯度 16.2.8 透明层 16.2.9 使用PDF文档 16.3 案例实战 16.3.1 案例:绘制图形 16.3.2 案例:绘制线条 16.3.3 案例:绘制文本 16.3.4 案例:绘制路径 16.3.5 案例:绘制曲线 16.3.6 案例:设计画板 16.4 小结 第17章 动画设计 视频讲解:14分钟 17.1 OpenGL ES 17.1.1 OpenGL ES概述 17.1.2 配置上下文 17.1.3 OpenGL ES绘制 17.2 OpenGL ES应用 17.2.1 项目的创建及设置 17.2.2 上下文的创建 17.2.3 渲染缓存的创建 17.2.4 帧缓存的创建 17.2.5 屏幕的清理 17.2.6 OpenGLView和应用程序委托关联 17.3 Core Animation 17.3.1 层和变换 17.3.2 树层结构 17.3.3 层上下文和层行为 17.3.4 动画 17.3.5 事务 17.3.6 动画层布局 17.4 案例实战 17.4.1 案例:设计过渡动画 17.4.2 案例:设计属性动画 17.4.3 案例:设计路径动画 17.5 小结 第18章 多媒体开发 视频讲解:26分钟 18.1 使用声音 18.1.1 音频编解码 18.1.2 音频回放和录制格式 18.1.3 音频会话 18.1.4 播放音频 18.1.5 通过iPod媒体库访问接口播放媒体项 18.1.6 使用系统声音服务播放短声音及触发震动 18.1.7 通过AVAudioPlayer类轻松播放声音 18.1.8 用音频队列服务播放和控制声音 18.1.9 创建一个音频队列对象 18.1.10 控制回放音量 18.1.11 指示回放音量 18.1.12 同时播放多路声音 18.1.13 使用OpenAL播放和定位声音 18.1.14 录制音频 18.1.15 解析音频流 18.1.16 iOS系统上的音频单元支持 18.1.17 iPhone音频的很好实践 18.2 使用视频 18.2.1 录制视频 18.2.2 播放视频文件 18.3 案例实战 18.3.1 案例:播放音效 18.3.2 案例:播放音乐 18.3.3 案例:播放视频 18.3.4 案例:录制音频 18.3.5 案例:录制视频 18.4 小结 第19章 设备管理 视频讲解:28分钟 19.1 硬件检测 19.2 配件通信 19.2.1 配件基础 19.2.2 声明协议 19.2.3 连接配件 19.2.4 监控配件 19.3 使用加速计 19.3.1 选择更新频率 19.3.2 分离重力数据 19.3.3 分离实时运动数据 19.3.4 获取设备方向 19.4 使用位置和方向 19.4.1 获取当前位置 19.4.2 获取方向事件 19.5 使用地图 19.5.1 添加地图视图 19.5.2 缩放和移动地图 19.5.3 显示用户当前位置 19.5.4 坐标和像素切换 19.5.5 显示注解 19.5.6 添加和移除注解对象 19.5.7 定义注解视图 19.5.8 创建注解视图 19.5.9 处理注解视图中的事件 19.5.10 获取地标信息 19.6 使用照相机 19.7 使用照片库 19.8 使用邮件 19.9 案例实战 19.9.1 案例:管理通信设备 19.9.2 案例:获取加速度、陀螺仪、磁场数据 19.9.3 案例:获取移动数据 19.9.4 案例:获取位置信息 19.9.5 案例:地图定位 19.10 小结 第20章 文件和数据操作 视频讲解:24分钟 20.1 文件操作 20.1.1 iPhone常用目录 20.1.2 获取程序目录路径 20.1.3 文件更新 20.1.4 文件备份和恢复 20.2 数据读写 20.2.1 文件数据的读写 20.2.2 属性列表数据的读写 20.2.3 用归档器对数据进行读写 20.2.4 将数据写到Documents目录 20.2.5 从Documents目录对数据进行读取 20.2.6 保存状态信息 20.3 SQLite 20.3.1 数据类型 20.3.2 常用函数及返回编码 20.3.3 操作数据库 20.3.4 创建表 20.3.5 操作数据语句 20.3.6 数据查询 20.4 案例实战 20.4.1 案例:使用属性列表设计备忘录 20.4.2 案例:使用SQLite设计单词本 20.5 小结 第21章 综合案例:抢扑克 视频讲解:8分钟 21.1 设计提示框交互项目 21.1.1 使用UIAlertView 21.1.2 保存时间值 21.1.3 添加图像文件 21.2 设计时间差视图控制器 21.2.1 建立NSData、UIImageView对象和IBAction方法 21.2.2 定义UIAlertView和游戏控件属性 21.3 构建扑克游戏控件 21.3.1 添加扑克游戏控件 21.3.2 设置游戏背景视图检查器 21.3.3 设置游戏扑克图像检查器 21.3.4 设置游戏透明按钮检查器 21.4 小结 第22章 综合案例:电子琴 22.1 创建音频工具项目 22.1.1 设置屏幕横向显示 22.1.2 添加背景图像和声音文件 22.1.3 添加音频工具框架 22.1.4 Audio Toolbox框架的作用 22.2 定义电子琴的交互方法 22.2.1 建立音频文件播放方法和播放动态 22.2.2 定义琴键属性值 22.3 构建电子琴界面 22.3.1 设置电子琴视图背景 22.3.2 添加控件 22.3.3 设置电子琴背景图检查器 22.3.4 设置电子琴键的检查器 22.4 小结 第23章 综合案例:吃豆人 视频讲解:7分钟 23.1 创建Utility Application图像移动按钮项目 23.1.1 添加移动图像和声音文件 23.1.2 添加支持动画和声音文件的框架 23.2 移动图像操作的视图控制器 23.2.1 建立UIImageView、按钮方向操作和音频播放方法 23.2.2 定义图像属性值和方向操作交互 23.3 在Interface Builder中构建吃豆人主页 23.3.1 构建吃豆人图像和背景图像 23.3.2 构建吃豆人移动按钮 23.4 在Interface Builder中构建吃豆人简介副页 23.5 小结 第24章 综合案例:打砖块 视频讲解:19分钟 24.1 创建Utility Application项目 24.1.1 添加打砖块的图像和声音文件 24.1.2 添加框架文件 24.1.3 添加UIImageView控制器 24.1.4 自定义UIImageView视图检查器 24.2 打砖块的MainViewController交互方法 24.2.1 建立游戏分数控件、操作交互和音频播放方法 24.2.2 定义游戏的操作和属性值 24.3 在Interface Builder内构建BoardView 24.3.1 添加NSObject 24.3.2 设置NSObject身份 24.4 在Interface Builder中构建打砖块游戏主页 24.5 在Interface Builder中构建打砖块简介副页 24.6 小结

作者简介

作者简介: 刘燕,国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。曾担任过51CTO社区iOS技术顾问,精通iOS、Android和HTML5等移动开发技术。先后主持开发过多网络游戏的iOS和Android客户端开发,在App Store上发布多款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。长期为中国移动研究院、云南移动、东软、方正科技、惠普、NTT、深圳康拓普、上海财富168、天津港务局、福州软件园、广州软件园等企事业单位授课。

精彩内容

    13.1.3 事件传递 系统将事件按照特定的路径传递给可以对其进行处理的对象。例如,当用户触摸设备屏幕时,iOS会将其识别为一组触摸对象,并将它们封装在一个UIEvent对象中,放入当前应用程序的事件队列。 事件对象将特定时刻的多点触摸序列封装为一些触摸对象。负责管理应用程序的UIApplication应用对象将事件从队列的顶部取出,然后派发给其他对象进行处理。典型情况下,它会将事件发送给应用程序的焦点窗口,然后代表该窗口的UIWindow对象再将其发送给第一响应者进行处理。 应用程序通过触碰测试(hit-testing)寻找事件的第一响应者,即通过递归调用视图层次中视图对象的hitTest:withEvent:方法确认发生触摸的子视图。触摸对象的整个生命周期都和该视图互相关联,即使触摸动作最终移动到该视图区域之外也是如此。 UIApplication对象和每个UIWindow对象都在sendEvent:方法中派发事件。由于这些方法是事件进入应用程序的通道,所以可以从UIApplication或UIWindow派生出子类,重载其sendEvent:方法,实现对事件的监控或执行特殊的事件处理,但大多数应用程序都不需要这样做。 【拓展】为了调整事件的传递,UIKit为应用程序提供了一些简化事件处理,甚至接近关闭事件流的编程接口。下面对这些方法进行总结。 ? 关闭事件的传递。默认情况下,视图会接收触摸事件。但是,可以将其userInteractionEnabled属性声明设置为NO,关闭事件传递的功能。隐藏或透明的视图也不能接收事件。 ? 在一定的时间内关闭事件的传递。应用程序可以调用UIApplication的beginIgnoringInteraction Events方法,并在随后调用endIgnoringInteractionEvents方法来实现这个目的。前一个方法使应用程序接近停止接收触摸事件消息,第二个方法则重启消息的接收。某些时候,当代码正在执行动画时,可能希望关闭事件的传递。 ? 打开多点触摸的传递。在默认情况下,视图只接收多点触摸序列的第一个触摸事件,而忽略所有其他事件。如果希望视图处理多点触摸,就必须使其启用这个功能。在代码或Interface Builder的查看器窗口中将视图的multipleTouchEnabled属性设置为YES,就可以实现这个 目标。 ? 将事件传递在某个单独的视图上。在默认情况下,视图的exclusiveTouch属性被设置为NO。将这个属性设置为YES会使相应的视图具有这样的特性:当该视图正在跟踪触摸动作时,窗口中的其他视图无法同时进行跟踪,它们不能接收到那些触摸事件。然而,一个标识为“独占触摸”的视图不能接收与同一窗口中其他视图相关联的触摸事件。如果一个手指接触到一个独占触摸的视图,则仅当该视图是窗口中专享一个跟踪手指的视图时,触摸事件才会被传递。如果一个手指接触到一个非独占触摸的视图,则仅当窗口中没有其他独占触摸视图跟踪手指时,该触摸事件才会被传递。 ? 将事件传递在子视图上。一个定制的UIView类可以通过重载hitTest:withEvent:方法来将多点触摸事件的传递在其子视图上。

主编推荐

“网络开发视频大讲堂”丛书系清华社“视频大讲堂”重点大系之一。该大系包括多个子系列,每个子系列的图书在其同品种的图书中销售名列前茅,其中:     4个品种荣获“全行业畅销品种” 1个品种荣获2012年清华大学出版社“专业热销书”一等奖 绝大多数品种在“计算机零售图书排行榜”同品种排行中名列前茅 截至目前该大系累计销售超过55万册 该大系已成为近年来清华社计算机专业基础类零售图书热销的品牌之一 “网络开发视频大讲堂”系列作为清华社“视频大讲堂”大系的子系列之一,继承和创新了清华社“视频大讲堂”大系的编写模式、写作风格和优良品质。本书突出了以下内容: 200节大型高清同步视频演示讲解,可反复观摩,让学习更为快捷、高效 102个典型中小实例,通过实例学习更深入,更有趣,更有动力 4个综合实战案例,展现工作过程,积累工作经验 ? iOS软件代码规范1部,Objective-C编码规范1部,iOS参考资料5类,iOS功能代码参考16类,iOS面试题5部分,iOS开发工具集合网页文档1部,iOS开发类库网页文档1部,iOS资源网页文档1部 ? 实用网页模板380套,网页配色辞典1部,协调色配色参考7套,网页色彩搭配图43张,不同色系实物配色卡540张,实用配色参考18部,网页设计素材13类 ? HTML工具集6部,CSS工具集8部,JavaScript工具集16部,PS帮助手册1部 ? HTML应用案例360个,CSS3应用案例510个,JavaScript+jQuery应用案例900个,网页交互设计案例1000个 ? Web前端开发规范手册1部,JavaScript知识点思维导图10张,HTML+CSS面试题351道,JavaScript面试题685道,网页欣赏

内容简介

《iOS开发从入门到精通》一书以iOS 9.0、Xcode 6.4为平台,全面介绍了iOS应用开发的基础知识。掌握Objective-C语言是iOS应用开发的基础,全书从Objective-C基本语法开始,详细讲解了Objective-C语法结构、Objective-C面向对象特征、Foundation核心类库用法,iOS应用开发的基本理论,以及iOS应用和编程技巧,主要包括iOS应用核心、窗口和视图、事件处理、视图控制器绘图、文件、SQLite、数据处理、网络、多媒体、设备支持、游戏开发等内容。本书还提供了很多开发应用案例,模仿练习这些案例,能够帮助用户快速地找到实战的感觉。 《iOS开发从入门到精通》内容翔实、结构清晰、循序渐进,基础知识与案例实战紧密结合,既可作为iOS初学者的入门教材,也适合中高级用户对新技术做进一步的学习和参考。

价格说明

定价:为出版社全国统一定价;

文轩价:为商品的销售价,是您最终决定是否购买商品的依据;受系统缓存影响,最终价格以商品放入购物车后显示的价格为准;

关于新广告法声明

新广告法规定所有页面信息中不得出现绝对化用词和功能性用词。

本店非常支持新广告法,但为了不影响消费者正常购买,页面明显区域本店已在排查修改,对于不明显区域也将会逐步排查并修改,我们此郑重声明:本店所有页面上的绝对化用词与功能性用词在此声明全部失效,不作为赔付理由。涉及“教育部声明”中的商品,均不代表教育部指定、推荐的具体版本,仅代表该商品的内容为指定、推荐书目。因极限用词引起的任何形式的商品赔付,本店不接收且不妥协。希望消费者理解并欢迎联系客服帮助完善,也请职业打假人士高抬贵手。