图书介绍

iOS核心开发手册 原书第5版【2025|PDF下载-Epub版本|mobi电子书|kindle百度云盘下载】

iOS核心开发手册 原书第5版
  • (美)萨顿,(美)沃德韦尔著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111491859
  • 出版时间:2015
  • 标注页数:540页
  • 文件大小:68MB
  • 文件页数:565页
  • 主题词:移动终端-应用程序-程序设计-手册

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

iOS核心开发手册 原书第5版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 手势与触摸1

1.1 触摸1

1.1.1 触摸操作所处的阶段2

1.1.2 UIResponder类中的触摸事件响应方法3

1.1.3 对视图的触摸4

1.1.4 多点触摸4

1.1.5 手势识别器5

1.2 解决方案:添加简单的直接操纵界面5

1.3 解决方案:添加拖动手势识别器7

1.4 解决方案:同时使用多个手势识别器9

1.5 解决方案:限制移动14

1.6 解决方案:测试触摸15

1.7 解决方案:针对位图的触摸测试17

1.8 解决方案:根据触摸情况在屏幕上绘制内容19

1.9 解决方案:令绘制效果变得平滑21

1.10 解决方案:启用多点触摸24

1.11 解决方案:检测圆圈手势27

1.12 解决方案:创建自定义手势识别器32

1.13 解决方案:把滚动视图中的内容拖曳到外面34

1.14 解决方案:实时的触摸反馈37

1.14.1 启用触摸反馈效果38

1.14.2 拦截并转发触摸事件38

1.14.3 实现TOUCHkit的TOUCHkitView类40

1.15 解决方案:向视图中添加菜单42

1.16 小结43

第2章 构建并使用控件45

2.1 UIControl类45

2.1.1 目标-动作模式46

2.1.2 控件的种类46

2.1.3 控件事件46

2.2 按钮48

2.3 Interface Builder中的按钮50

2.4 解决方案:构建按钮51

2.4.1 多行按钮文本54

2.4.2 为按钮添加动画元件54

2.4.3 为按钮添加额外状态55

2.5 解决方案:使按钮以动画效果来响应用户55

2.6 解决方案:为滑杆控件添加自定义的滑块57

2.6.1 定制UISlider控件57

2.6.2 添加优化代码58

2.7 解决方案:创建可以连续点击两次的分段选择控件61

2.7.1 实现第二次点击时的反馈效果62

2.7.2 控件及带属性的字符串63

2.8 开关控件与步进控件64

2.9 解决方案:编写UIControl的子类65

2.9.1 创建控件68

2.9.2 追踪触摸事件68

2.9.3 派发控件事件69

2.10 解决方案:构建评分所用的Star Slider控件69

2.11 解决方案:构建触摸转盘控件72

2.12 解决方案:创建拉曳控件75

2.12.1 为控件添加提示效果75

2.12.2 测试触摸77

2.13 解决方案:构建自定义的锁定控件80

2.14 解决方案:图片库查看器83

2.15 构建工具栏85

2.16 小结88

第3章 提醒用户89

3.1 直接向用户弹出警告视图89

3.1.1 构建简单的警告视图89

3.1.2 设置UIAlertView的委托91

3.1.3 显示UIAlertView92

3.1.4 各种UIAlertView92

3.2 解决方案:构建支持块的警告视图93

3.2.1 块简介93

3.2.2 使用块时避免保留循环95

3.3 解决方案:将变长参数列表与UIAlertView结合起来使用98

3.4 展示选项列表99

3.4.1 滚动菜单101

3.4.2 在动作表中显示文本101

3.5 将操作进度告知用户并提示其稍等片刻102

3.5.1 使用UIActivity-IndicatorView103

3.5.2 使用UIProgressView103

3.6 解决方案:在屏幕上绘制模态的进度指示器104

3.7 解决方案:自制的模态警告视图106

3.8 解决方案:基本的popover110

3.9 解决方案:本机通知111

3.10 用网络活动指示器提醒用户113

3.11 解决方案:播放简单的提示音114

3.11.1 System Sound114

3.11.2 为使用系统框架而引入模块115

3.11.3 震动115

3.11.4 警示音116

3.11.5 延迟117

3.11.6 释放系统音117

3.12 小结117

第4章 编排视图及其动画效果119

4.1 视图层级119

4.2 解决方案:用树状图来描述视图层级121

4.3 解决方案:查询子视图123

4.4 管理子视图125

4.4.1 添加子视图125

4.4.2 重排及删除子视图125

4.4.3 UIView的回调方法125

4.5 为视图设定标签并查找视图126

4.6 解决方案:通过对象关联机制为视图设定名称127

4.7 视图的几何特征129

4.7.1 框架130

4.7.2 与CGRect有关的工具函数130

4.7.3 CGPoint与CGSize131

4.7.4 CGAffineTransform132

4.7.5 坐标系统133

4.8 解决方案:操控视图的框架133

4.8.1 调整视图的尺寸134

4.8.2 CGRect与中心点136

4.8.3 视图的其他几何特征137

4.9 解决方案:获取与坐标变换有关的信息141

4.9.1 获取与变换有关的属性141

4.9.2 判断两个视图是否相交142

4.10 与显示和交互有关的特征147

4.11 UIView的动画效果148

4.12 解决方案:视图的淡入与淡出150

4.13 解决方案:交换两个视图的前后顺序151

4.14 解决方案:翻转视图151

4.15 解决方案:采用Core AnimationAPI来制作切换效果153

4.16 解决方案:使视图在出现之后回弹155

4.17 解决方案:关键帧动画156

4.18 解决方案:UIImageView的动画效果157

4.19 小结158

第5章 视图的约束系统160

5.1 什么是约束161

5.2 约束系统所用的属性161

5.3 约束系统的运作规律163

5.4 约束规则与框架属性165

5.4.1 固有内容的尺寸165

5.4.2 对齐矩形166

5.5 创建约束规则167

5.5.1 基本约束规则声明167

5.5.2 用可视化格式字符串声明约束规则168

5.5.3 变量绑定169

5.6 格式字符串169

5.6.1 方向169

5.6.2 连接171

5.7 谓词173

5.7.1 指标173

5.7.2 描述两个视图关系的谓词174

5.7.3 优先级174

5.8 格式字符串总结174

5.9 用格式字符串将视图对齐并灵活调整其尺寸176

5.10 处理约束规则的流程176

5.11 管理约束规则177

5.12 解决方案:实现约束规则之间的对比178

5.13 解决方案:创建尺寸固定且受规则约束的视图181

5.13.1 禁用translatesAutoresizing-MaskIntoConstraints181

5.13.2 令视图出现在上级视图范围内182

5.13.3 限定视图的尺寸183

5.13.4 把前面各节内容拼装起来183

5.14 解决方案:将两个视图居中对齐185

5.15 解决方案:设定宽高比186

5.16 解决方案:响应屏幕方向的变更188

5.17 调试约束规则190

5.18 解决方案:描述约束规则191

5.19 用宏来创建约束规则194

5.20 小结197

第6章 文本输入198

6.1 解决方案:隐藏UITextField的键盘199

6.1.1 阻止系统把键盘隐藏起来200

6.1.2 UITextInputTraits协议中的属性200

6.1.3 文本框的其他属性201

6.2 解决方案:把带有自定义辅助视图的键盘隐藏起来203

6.3 解决方案:根据键盘来调整文本视图205

6.4 解决方案:创建自定义的输入视图209

6.5 解决方案:使视图具备文本输入功能213

6.6 解决方案:为非文本视图添加自定义的输入视图216

6.7 解决方案:创建更好的文本编辑器(第一部分)218

6.8 解决方案:创建更好的文本编辑器(第二部分)221

6.8.1 启用Attributed Text221

6.8.2 控制文本的样式221

6.8.3 可供UIResponder使用的其他功能223

6.9 解决方案:过滤用户所输入的文本224

6.10 解决方案:检测文本模式226

6.10.1 构建自己的正则表达式227

6.10.2 枚举正则表达式227

6.10.3 数据探测器228

6.10.4 使用内置类型的探测器229

6.10.5 有用的网站229

6.11 解决方案:检测UITextView中的拼写错误231

6.12 搜寻文本中的字符串232

6.13 小结233

第7章 使用视图控制器234

7.1 视图控制器234

7.1.1 UIViewController类235

7.1.2 导航控制器235

7.1.3 标签栏控制器235

7.1.4 分栏视图控制器236

7.1.5 页面视图控制器236

7.1.6 popover控制器236

7.2 使用导航控制器与分栏视图控制器来开发程序237

7.2.1 使用导航控制器与导航栈238

7.2.2 推入与弹出视图控制器239

7.2.3 导航栏上的按钮239

7.2.4 延伸至屏幕边缘的布局形式240

7.3 解决方案:UINavigationItem类241

7.3.1 标题与后退按钮242

7.3.2 宏242

7.4 解决方案:模态界面244

7.5 解决方案:构建分栏视图控制器248

7.6 解决方案:用分栏视图及导航控制器创建通用的程序253

7.7 解决方案:标签栏255

7.8 记住标签的状态259

7.9 解决方案:页面视图控制器262

7.9.1 与书籍展示风格有关的属性262

7.9.2 封装实现细节263

7.9.3 范例代码详解269

7.9.4 构建界面索引270

7.10 解决方案:自定义的容器271

7.10.1 添加与移除子视图控制器274

7.10.2 视图控制器之间的切换效果275

7.11 解决方案:segue276

7.12 小结282

第8章 常用的控制器284

8.1 图像选取器控制器284

8.1.1 图像来源284

8.1.2 在iPhone和iPad中显示选取器285

8.2 解决方案:选取图像286

8.2.1 向模拟器中添加图片286

8.2.2 AssetsLibrary模块286

8.2.3 展示选取器287

8.2.4 处理delegate的回调288

8.3 解决方案:拍摄照片293

8.3.1 配置选取器293

8.3.2 显示图像295

8.3.3 把图像保存到相册295

8.4 解决方案:录制视频297

8.4.1 创建录制视频用的选取器298

8.4.2 保存视频299

8.5 解决方案:用媒体播放器播放视频299

8.6 解决方案:编辑视频302

8.7 解决方案:选取并编辑视频304

8.8 解决方案:通过电子邮件发送图片306

8.9 解决方案:发送文本消息309

8.10 解决方案:在社交网站发布消息311

8.11 小结313

第9章 创建并管理表格视图314

9.1 iOS的表格314

9.2 委托315

9.3 创建表格316

9.3.1 表格的样式316

9.3.2 排布表格视图316

9.3.3 设置数据源317

9.3.4 提供单元格317

9.3.5 注册单元格类317

9.3.6 从队列中取出单元格318

9.3.7 设置delegate318

9.4 解决方案:实现简单的表格319

9.4.1 数据源方法319

9.4.2 响应用户的触摸322

9.5 UITableViewCell类322

9.5.1 单元格的selectionStyle属性323

9.5.2 添加自定义的单元格受选效果323

9.6 解决方案:创建带有选取标记的单元格323

9.7 给单元格添加详情展示控件325

9.8 解决方案:编辑表格327

9.8.1 添加撤销功能331

9.8.2 实现撤销功能332

9.8.3 显示移除单元格所用的控件332

9.8.4 处理删除请求332

9.8.5 通过滑动手势删除单元格333

9.8.6 调整单元格的顺序333

9.8.7 添加单元格333

9.9 解决方案:操控表格的区段334

9.9.1 构建区段334

9.9.2 区段数量与区段内的行数335

9.9.3 返回单元格335

9.9.4 创建每个区段的头部标题337

9.9.5 定制表格与区段的头部及尾部338

9.9.6 创建区段索引338

9.9.7 处理索引与区段不匹配的问题339

9.9.8 为分区表格实现委托方法339

9.10 解决方案:在表格中搜索339

9.10.1 创建搜索显示控制器341

9.10.2 为搜索显示控制器注册单元格341

9.10.3 构建支持搜索功能的数据源方法342

9.10.4 委托方法343

9.10.5 使用与搜索功能相配套的索引344

9.11 解决方案:给表格添加下拉刷新功能345

9.12 解决方案:添加指令行348

9.13 制作自定义的分组表格351

9.14 解决方案:构建含有多个滚轮的表格352

9.14.1 创建UIPickerView353

9.14.2 数据源方法与委托方法353

9.14.3 使用带有选取器的视图354

9.15 使用UIDatePicker356

9.16 小结357

第10章 集合视图358

10.1 集合视图与表格的异同358

10.2 建立集合视图360

10.2.1 通过控制器使用集合视图361

10.2.2 直接使用集合视图361

10.2.3 数据源与委托362

10.3 流式布局362

10.3.1 滚动方向362

10.3.2 条目的尺寸以及行间距362

10.3.3 头部与尾部的尺寸364

10.3.4 内边距365

10.4 解决方案:采用流式布局的简单集合视图366

10.5 解决方案:自定义单元格370

10.6 解决方案:水平滚动的列表372

10.7 解决方案:创建交互式的布局效果375

10.8 解决方案:滚动之后自动调整位置377

10.9 解决方案:创建圆形布局378

10.9.1 实现创建条目与删除条目时的动画效果381

10.9.2 增强圆形布局的实用性382

10.9.3 布局对象383

10.10 解决方案:用手势调整布局383

10.11 解决方案:创建真正的网格状布局385

10.12 解决方案:为集合视图中的条目添加自定义菜单391

10.13 小结393

第11章 分享文档与数据394

11.1 解决方案:使用统一类型标识符394

11.1.1 根据文件扩展名来决定UTI395

11.1.2 把UTI转换成扩展名或MIME类型396

11.1.3 判断两个UTI之间是否有依从关系397

11.1.4 获取依从关系列表398

11.2 解决方案:访问系统剪贴板400

11.2.1 存储数据401

11.2.2 存储常见类型的数据401

11.2.3 获取数据402

11.2.4 自动更新剪贴板402

11.3 解决方案:监控Documents文件夹403

11.3.1 启用文件分享功能403

11.3.2 用户对Documents文件夹的控制能力403

11.3.3 在Xcode里访问应用程序沙盒405

11.3.4 扫描新的文档405

11.4 解决方案:活动视图控制器408

11.4.1 展示活动视图控制器409

11.4.2 UIActivityItemSource协议409

11.4.3 UIActivityItemProvider类411

11.4.4 实现UIActivityItemSource协议中的回调方法411

11.4.5 添加分享服务412

11.4.6 与各种数据类型相对应的操作416

11.4.7 排除某些操作417

11.5 解决方案:Quick Look预览控制器417

11.6 解决方案:使用文档交互控制器420

11.6.1 创建UIDocumentInteraction-Controller实例420

11.6.2 UIDocumentInteraction-Controller的属性424

11.6.3 提供快速查看文档的功能424

11.6.4 判断是否应启用“Open in…”操作425

11.7 解决方案:声明程序所支持的文档类型426

11.7.1 创建自定义的文档类型427

11.7.2 实现对文档的支持428

11.8 解决方案:创建基于URL的服务431

11.8.1 声明模式432

11.8.2 测试URL433

11.8.3 添加处理程序方法433

11.9 小结434

第12章 浅谈Core Data435

12.1 Core Data简介435

12.2 实体与模型436

12.2.1 构建模型文件436

12.2.2 属性与关系437

12.2.3 构建NSManagedObject的子类437

12.3 创建上下文438

12.4 添加数据439

12.5 查询数据库441

12.5.1 配置NSFetchRequest442

12.5.2 执行数据获取操作443

12.6 移除对象444

12.7 解决方案:用CoreData来充当表格的数据源445

12.7.1 访问索引路径445

12.7.2 sectionNameKeyPath属性445

12.7.3 获取每个区段内的对象445

12.7.4 sectionIndexTitles属性446

12.7.5 Core Data与表格之间的紧密结合446

12.8 解决方案:用CoreData实现表格的搜索功能448

12.9 解决方案:为Core Data表格视图添加编辑功能450

12.9.1 添加撤销/重做功能451

12.9.2 创建撤销事务452

12.9.3 重新思考编辑功能452

12.10 解决方案:由Core Data所驱动的集合视图456

12.11 小结461

第13章 网络编程基础462

13.1 解决方案:判断网络状态462

13.2 监测联网状况是否发生变化465

13.3 URL加载系统467

13.3.1 配置467

13.3.2 任务468

13.3.3 NSURLSession468

13.4 解决方案:简单的下载469

13.5 解决方案:在下载过程中提供反馈473

13.6 解决方案:后台传输482

13.6.1 测试后台传输484

13.6.2 Web服务484

13.7 解决方案:使用NSJSONSeriali-zation类485

13.8 解决方案:将XML转换为树状结构487

13.8.1 树489

13.8.2 构建解析树489

13.9 小结492

第14章 针对特定设备的开发493

14.1 访问基本的设备信息493

14.2 添加设备能力限制494

14.2.1 提供描述信息以征求用户同意496

14.2.2 Info.plist文件中其他常用的键496

14.3 解决方案:检查设备距离与电池状态496

14.3.1 启用与禁用距离感应器497

14.3.2 监控电池状态497

14.3.3 判断设备是否具有Retina显示屏499

14.4 解决方案:获取设备的其他信息500

14.5 Core Motion基础知识502

14.5.1 判断设备是否支持某种感应器502

14.5.2 获取感应器数据503

14.6 解决方案:通过加速度来判断“上”方向503

14.7 使用基本的方向值504

14.7.1 根据加速计来判断方向505

14.7.2 计算相对角度506

14.8 解决方案:使用加速计来移动屏幕上的物体507

14.9 解决方案:基于加速计的滚动视图511

14.10 解决方案:获取并使用设备的姿态513

14.11 用Motion Event来检测晃动514

14.12 使用外接屏幕515

14.12.1 检测屏幕516

14.12.2 获取屏幕分辨率517

14.12.3 配置视频输出517

14.12.4 添加CADisplayLink518

14.12.5 对过扫描进行补偿518

14.12.6 VIDEOkit518

14.13 追踪用户521

14.14 查询可用的磁盘空间522

14.15 小结523

第15章 辅助功能524

15.1 辅助功能基础知识524

15.2 启用辅助功能526

15.3 特征526

15.4 标签528

15.5 提示语528

15.6 用模拟器测试辅助功能529

15.7 把变化情况传播出去531

15.8 在iOS上面测试辅助功能531

15.9 语音合成533

15.10 动态字体534

15.11 小结535

附录A Objective-C字面量536

热门推荐