《基于Swift语言的iOS App商业实战教程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:黑马程序员编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:9787115440938
  • 页数:447 页
图书介绍:本书共分为13阶段,其中第0阶段是对项目的整体介绍,包括项目背景、项目开发环境,项目文档的使用、项目功能、建议学习方法以及通过项目可以获得的收获。第1-11阶段从项目架构搭接开始,带领大家开发了微博项目的核心功能,第12阶段介绍了项目测试以及发布的流程。通过本书的学习,相信大家具备独自开发iOS应用的能力,成为Swift的稀缺人才。

第1章 项目简介——“开门见山” 1

1.1项目介绍 2

1.1.1项目背景介绍 2

1.1.2项目注册 2

1.1.3接口文档的获取和查看 5

1.1.4项目功能介绍 8

1.2 Swift语言介绍 12

1.3搭建开发环境 12

1.3.1 Xcode概述 12

1.3.2 Xcode工具的下载安装 13

1.4项目目标 15

1.5本章小结 15

第2章 微博开发准备——“工欲善其事,必先利其器” 16

2.1创建微博工程 17

2.1.1新建项目 17

2.1.2默认项目架构 19

2.1.3了解程序启动的原理 20

2.2设置项目启动信息 21

2.2.1设置应用名称 21

2.2.2设置应用图标 21

2.2.3设置启动图片 23

2.3项目整体架构 26

2.3.1了解什么是视图(UIView) 27

2.3.2了解视图控制器(UIViewController) 28

2.3.3导航控制器的使用场景 28

2.3.4标签控制器的使用场景 29

2.3.5确定项目整体架构 29

2.3.6 MVC与MVVM模式 30

2.4本章小结 32

第3章 微博项目搭建——“万丈高楼平地起” 33

3.1设置项目目录结构 34

3.1.1设置目录结构 34

3.1.2创建各个控制器模板文件 36

3.1.3显示控制器的界面 38

3.2添加子控制器 39

3.2.1标签控制器的组成 39

3.2.2导航控制器的组成 41

3.2.3设置标签和标题 42

3.3添加撰写按钮 44

3.3.1了解什么是按钮控件(UIButton) 44

3.3.2自定义Tab Bar 45

3.3.3按钮监听方法 48

3.4本章小结 49

第4章 访客视图 50

4.1分析访客视图与现有架构的关系 51

4.2创建表格视图控制器基类 52

4.2.1了解视图的加载机制 52

4.2.2添加表视图控制器基类 53

4.3分析访客视图界面 54

4.3.1标签控件(UILabel) 54

4.3.2图片控件(UIImageView) 55

4.3.3分析访客视图界面元素 56

4.4开发访客视图界面 58

4.4.1创建访客视图 58

4.4.2添加图片控件 59

4.4.3了解自动布局(Auto Layout) 60

4.4.4使用自动布局(Auto Layout) 61

4.4.5使用自动布局设置图片的位置 63

4.4.6添加其他控件 64

4.4.7 VFL语言 67

4.4.8添加遮罩视图,并使用VFL布局位置 69

4.4.9设置未登录信息 70

4.5首页动画 74

4.5.1了解iOS中的基本动画 74

4.5.2为首页转轮图片设置动画 75

4.6本章小结 75

第5章 第三方框架介绍 76

5.1 CocoaPods工具 77

5.1.1 CocoaPods工具简介 77

5.1.2安装CocoaPods工具 78

5.2 AFNetworking框架 78

5.3 SnapKit框架 79

5.4 SDWeblmage框架 84

5.4.1 SDWeblmage框架的安装 84

5.4.2 SDWeblmage框架的简单使用 86

5.5 SVProgressHUD框架 87

5.5.1 SVProgressHUD框架介绍 87

5.5.2使用SVProgressHUD框架 88

5.6本章小结 88

第6章 封装网络工具类 89

6.1网络编程基础知识 90

6.1.1网络编程简单工作原理 90

6.1.2 URL介绍 90

6.1.3HTTP协议 92

6.1.4 GET和POST方法 92

6.2封装网络工具类 93

6.2.1网络封装原理 93

6.2.2使用CocoaPods工具导入AFNetworking框架 94

6.2.3了解什么是单例模式 95

6.2.4创建网络工具类 96

6.3本章小结 101

第7章 登录授权 102

7.1 OAuth机制 103

7.1.1 OAuth机制介绍 103

7.1.2 OAuth机制的使用流程 103

7.1.3新浪微博的Oauth 2.0授权机制 104

7.2获取访问令牌 105

7.2.1分析如何何获取访问令牌 105

7.2.2了解什么是Web视图 106

7.2.3使用Web视图加载登录授权页面 108

7.2.4利用JS注入填充用户名和密码 111

7.2.5获取授权码(code) 115

7.2.6获取访问令牌(access_token) 117

7.3加载用户信息 120

7.3.1了解JSON文档的结构 120

7.3.2解析JSON文档 121

7.3.3了解字典转模型的机制 122

7.3.4创建用户账号模型 123

7.3.5处理令牌的过期日期 124

7.3.6使用令牌加载用户信息 125

7.4归档用户信息到本地 127

7.4.1了解沙盒机制 127

7.4.2沙盒的目录结构 128

7.4.3沙盒目录获取方式 129

7.4.4对象归档技术 130

7.4.5归档和解档当前用户的信息 131

7.4.6创建用户视图模型 132

7.5本章小结 137

第8章 新特性和欢迎界面 138

8.1为项目添加新特性界面 139

8.1.1分析新特性界面 139

8.1.2介绍集合视图(UICollectioView) 139

8.1.3创建新特性视图控制器 144

8.1.4设置数据源 145

8.1.5设置集合视图的布局 146

8.1.6自定义集合视图单元格(cell) 146

8.1.7使用UIView实现动画 148

8.1.8“开始体验”按钮动画 149

8.2为项目添加欢迎界面 151

8.2.1分析欢迎界面 151

8.2.2欢迎界面布局 152

8.2.3欢迎界面动画 157

8.2.4设置用户头像 159

8.3切换界面 159

8.3.1界面切换流程分析 159

8.3.2介绍偏好设置(NSUserDefaults) 160

8.3.3显示程序启动后的界面 161

8.3.4欢迎界面跳转到首页界面 163

8.3.5新特性界面跳转到首页界面 164

8.3.6访客视图跳转到欢迎界面 164

8.4本章小结 165

第9章 微博首页 166

9.1微博数据模型 168

9.1.1获取微博数据 168

9.1.2字典转换成模型 170

9.1.3表视图(UITableView) 171

9.1.4表视图单元格(UITableViewCell) 174

9.1.5表格显示微博数据 176

9.1.6嵌套用户模型 179

9.1.7微博视图模型 181

9.2文字微博布局 183

9.2.1分析无图微博的布局 183

9.2.2自定义单元格 184

9.2.3顶部视图布局 187

9.2.4内容标签布局 192

9.2.5底部视图布局 194

9.2.6单元格细节调整 199

9.2.7全局修改函数的名字 200

9.3配图微博布局 202

9.3.1微博中图片的显示方式 202

9.3.2准备配图需要的数据 202

9.3.3添加配图视图 208

9.3.4修改配图视图宽高 209

9.3.5计算配图视图的大小 210

9.3.6计算微博单元格的行高 213

9.3.7了解图像视图的填充模式 214

9.3.8给配图单元格设置图片 215

9.3.9给图片添加GIF标记 217

9.4本章小结 218

第10章 微博转发 219

10.1显示转发的微博 220

10.1.1转发微博分析 220

10.1.2准备数据模型 221

10.1.3搭建转发微博单元格 222

10.1.4设置被转发微博的数据 226

10.1.5处理原创微博与转发微博的互融 227

10.1.6了解GCD技术 229

10.1.7调整单张图片的显示 230

10.2刷新微博 233

10.2.1下拉刷新模式 233

10.2.2 下拉刷新控件 235

10.2.3分析微博刷新的过程 237

10.2.4使用Xib自定义下拉刷新控件 240

10.2.5 KVO机制 245

10.2.6使用KVO监听刷新控件的位置变化 246

10.2.7提示箭头旋转动画 248

10.2.8播放和停止加载动画 249

10.2.9自定义上拉刷新控件 251

10.2.10 刷新用到的网络数据 252

10.2.11下拉刷新提示数量标签 255

10.3表情键盘 256

10.3.1多行文本控件(UITextView) 256

10.3.2创建表情键盘视图 258

10.3.3表情键盘界面布局 259

10.3.4项目添加文件夹的3种方式 265

10.3.5加载数据模型 266

10.3.6显示表情符号 268

10.3.7显示emoji表情 270

10.3.8提升数据模型 271

10.3.9选中表情事件 275

10.3.10实现图文混排 276

10.3.11处理发布微博的文本 278

10.3.12简化控制器的代码 281

10.4本章小结 284

第11章 发布微博 285

11.1发布文本和图片微博 286

11.1.1发布微博过程分析 286

11.1.2 工具条控件(UIToolbar) 287

11.1.3搭建发布微博的界面 289

11.1.4弹出键盘和关闭键盘介绍 296

11.1.5实现系统键盘的弹出和关闭 297

11.1.6在项目中整合表情键盘 298

11.1.7发布文字微博 300

11.1.8发布带图片的微博 303

11.2给微博选择照片 305

11.2.1用户选择照片发布的流程 305

11.2.2选择照片功能的实现流程 307

11.2.3图片选择器(Ul lmagePickerController) 308

11.2.4开发独立的照片选择项目 310

11.2.5将照片选择功能整合到微博项目 323

11.3本章小结 327

第12章 给配图微博添加查看器 328

12.1照片查看器功能分析 329

12.1.1了解照片查看器的功能 329

12.1.2分析图片数据的传递方式 330

12.1.3屏幕滚动控件(UIScrollView) 331

12.1.4分析图片查看器的视图结构 334

12.2照片查看器功能的实现 335

12.2.1实现数据传递 335

12.2.2准备图片查看控制器 337

12.2.3使用贝塞尔路径(UIBezierPath)绘图 338

12.2.4手势识别(UIGestureRecognizer) 338

12.2.5搭建图片查看界面 341

12.2.6实现图片查看的功能 342

12.3为照片查看器添加转场动画 353

12.3.1什么是转场动画 354

12.3.2了解照片查看器的转场功能 355

12.3.3分析转场过程中视图的层次结构 356

12.3.4分析图像的起始位置和目标位置 357

12.3.5初步完成自定义转场动画 358

12.3.6通过代理展现转场动画 363

12.3.7通过代理解除转场动画 371

12.4本章小结 376

第13章 数据缓存 377

13.1 SQLite数据库 378

13.1.1 SQLite数据库简介 378

13.1.2 SQL语句介绍 379

13.1.3使用SQLite3存储对象 380

13.2 FMDB框架的使用 380

13.2.1获取FMDB框架 380

13.2.2 FMDB框架核心类 381

13.2.3使用FMDB框架操作数据库 381

13.3使用FMDB缓存微博数据 393

13.3.1分析微博缓存的原理 393

13.3.2实现微博缓存 394

13.4清理数据存储 402

13.5本章小结 404

第14章 微博优化 405

14.1和日期相关的类 406

14.1.1 NSDate类(日期和时间) 406

14.1.2 NSDateFormatter类(日期格式器) 406

14.1.3 NSCalendar类 407

14.2微博日期处理 408

14.2.1了解微博的日期的显示方式 408

14.2.2处理微博日期格式 408

14.3使用正则表达式处理微博来源 412

14.3.1了解正则表达式处理字符串 412

14.3.2使用正则表达式过滤接口的来源信息 413

14.4使用表情文字 415

14.4.1准备工作 416

14.4.2测试普通字符串转换成属性字符串 417

14.4.3将功能代码移到EmoticonManager类里面 419

14.4.4微博项目整合表情字符串功能 420

14.5使用FFLabel框架响应超链接 421

14.5.1导入FFLabel框架 422

14.5.2替换系统的UILabel控件 423

14.5.3监听链接的单击 424

14.5.4响应超文本的链接 425

14.6开发最近使用表情的功能 428

14.7本章小结 430

第15章 项目调试和发布 432

15.1真机测试 433

15.2发布App到 App Store流程 437

15.2.1申请开发者账号 437

15.2.2登录开发者中心 437

15.2.3生成发布证书 438

15.2.4在Xcode中打包工程上传 444

15.2.5在App Store上开辟空间 446

15.3本章小结 447