图书介绍

疯狂iOS讲义 基础篇2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

疯狂iOS讲义 基础篇
  • 李刚编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121287930
  • 出版时间:2016
  • 标注页数:728页
  • 文件大小:114MB
  • 文件页数:745页
  • 主题词:移动终端-应用程序-程序设计

PDF下载


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

下载说明

疯狂iOS讲义 基础篇PDF格式电子书版下载

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

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

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

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

图书目录

第1章 iOS应用与开发环境1

1.1 iOS简介及其开发语言2

1.1.1 Swift简介2

1.1.2 Objective-C简介2

1.1.3 iOS简介3

1.2 搭建iOS开发环境4

1.2.1 下载并安装Xcode和SDK4

1.3 第一个Objective-C程序7

1.3.1 使用文本编辑器开发Objective-C程序7

1.3.2 使用Xcode工具开发Objective-C程序9

1.4 熟悉Xcode11

1.4.1 创建iOS项目11

1.4.2 熟悉导航面板13

1.4.3 熟悉检查器面板16

1.4.4 熟悉库面板17

1.4.5 使用Xcode的帮助系统19

1.5 本章小结21

第2章 数据类型和运算符22

2.1 注释23

2.2 标识符和变量24

2.2.1 分隔符24

2.2.2 标识符规则26

2.2.3 Objective-C关键字26

2.3 数据类型分类26

2.4 基本数据类型27

2.4.1 整型27

2.4.2 NSLog输出函数及格式字符28

2.4.3 字符型30

2.4.4 浮点型31

2.4.5 枚举型32

2.4.6 BOOL类型34

2.5 类型转换35

2.5.1 自动类型转换36

2.5.2 强制类型转换37

2.5.3 表达式类型的自动提升37

2.6 运算符38

2.6.1 算术运算符38

2.6.2 赋值运算符41

2.6.3 位运算符41

2.6.4 扩展后的赋值运算符43

2.6.5 比较运算符44

2.6.6 逻辑运算符45

2.6.7 逗号运算符45

2.6.8 三目运算符46

2.6.9 运算符的结合性和优先级47

2.7 本章小结48

第3章 流程控制与数组49

3.1 顺序结构50

3.2 分支结构50

3.2.1 if条件语句50

3.2.2 switch分支语句54

3.3 循环结构56

3.3.1 while循环语句56

3.3.2 do while循环语句58

3.3.3 for循环59

3.3.4 嵌套循环62

3.4 控制循环结构63

3.4.1 使用break结束循环63

3.4.2 使用continue结束本次循环64

3.4.3 使用return结束函数64

3.5 goto语句65

3.6 数组67

3.6.1 定义数组67

3.6.2 数组的显式初始化68

3.6.3 使用数组69

3.6.4 多维数组70

3.6.5 多维数组的初始化71

3.6.6 字符数组、字符串与结束标志77

3.6.7 输出字符串和字符串函数78

3.6.8 数组的应用举例80

3.7 本章小结81

第4章 C语言特性82

4.1 函数83

4.1.1 定义函数83

4.1.2 函数声明86

4.1.3 函数的参数传递机制87

4.1.4 递归函数91

4.1.5 数组作为函数参数92

4.1.6 内部函数与外部函数96

4.2 局部变量与全局变量98

4.2.1 局部变量98

4.2.2 全局变量99

4.2.3 外部全局变量与内部全局变量101

4.2.4 动态存储与静态存储102

4.3 预处理105

4.3.1 使用#define、 #undef执行宏定义105

4.3.2 带参数的宏定义107

4.3.3 使用#ifdef、 #ifndef、 #else、#endif执行条件编译108

4.3.4 使用#if、 #elif、 #else、 #endif执行条件编译110

4.3.5 #include与#import111

4.4 指针112

4.4.1 指针的概念112

4.4.2 指针变量及其基本用法113

4.4.3 指针变量作为函数参数115

4.5 指针与数组117

4.5.1 指向数组的指针变量117

4.5.2 指针运算118

4.5.3 数组变量作为函数参数120

4.5.4 指向多维数组的指针变量122

4.6 字符串与指针124

4.6.1 使用字符指针表示字符串125

4.6.2 字符指针作为函数参数125

4.7 函数与指针127

4.7.1 用函数指针变量调用函数127

4.7.2 用函数指针变量作为函数参数128

4.7.3 返回指针的函数129

4.8 指针数组和指向指针变量的指针131

4.8.1 指针数组与main()函数形参131

4.8.2 指向指针变量的指针134

4.9 结构体134

4.9.1 定义结构体134

4.9.2 typedef语句136

4.9.3 初始化结构体变量138

4.9.4 结构体数组139

4.10 块140

4.10.1 块的基本语法140

4.10.2 块与局部变量141

4.10.3 直接用块作为参数142

4.10.4 使用typedef定义块类型143

4.11 本章小结144

第5章 面向对象(上)145

5.1 类和对象146

5.1.1 定义类146

5.1.2 对象的产生和使用150

5.1.3 对象和指针152

5.1.4 self关键字154

5.1.5 id类型157

5.2 方法详解158

5.2.1 方法的所属性158

5.2.2 形参个数可变的方法159

5.3 成员变量160

5.3.1 成员变量及其运行机制160

5.3.2 模拟类变量163

5.3.3 单例(Singleton)模式164

5.4 隐藏和封装165

5.4.1 理解封装165

5.4.2 使用访问控制符165

5.4.3 理解@package访问控制符169

5.4.4 合成存取方法170

5.4.5 使用点语法访问属性176

5.5 键值编码(KVC)与键值监听(KVO)176

5.5.1 简单的KVC177

5.5.2 处理不存在的key179

5.5.3 处理nil值181

5.5.4 key路径182

5.5.5 键值监听(KVO)184

5.6 对象初始化187

5.6.1 为对象分配空间187

5.6.2 初始化方法与对象初始化187

5.6.3 便利的初始化方法189

5.7 类的继承191

5.7.1 继承的特点191

5.7.2 重写父类的方法193

5.7.3 super关键字194

5.8 多态197

5.8.1 多态性197

5.8.2 指针变量的强制类型转换200

5.8.3 判断指针变量的实际类型201

5.9 本章小结202

第6章 面向对象(下)203

6.1 Objective-C的包装类204

6.1.1 它们不是包装类204

6.1.2 NSValue和NSNumber205

6.2 处理对象206

6.2.1 打印对象和description方法206

6.2.2 =和isEqual:方法208

6.3 类别与扩展212

6.3.1 类别(category)213

6.3.2 利用类别对类进行模块化设计215

6.3.3 使用类别来调用私有方法215

6.3.4 扩展(extension)217

6.4 协议(protocol)与委托219

6.4.1 规范、协议与接口219

6.4.2 使用类别实现非正式协议220

6.4.3 正式协议的定义221

6.4.4 遵守(实现)协议222

6.4.5 协议与委托(delegate)225

6.5 使用@try处理异常228

6.5.1 使用@try...@catch...@finally捕获异常229

6.5.2 访问异常信息231

6.5.3 使用@finally回收资源232

6.5.4 抛出异常与自定义异常类233

6.6 Objective-C反射机制235

6.6.1 获得Class235

6.6.2 检查继承关系236

6.6.3 动态调用方法237

6.7 手动内存管理241

6.7.1 对象的引用计数242

6.7.2 对象所属权245

6.7.3 方法中的保留和释放247

6.7.4 使用自动释放池248

6.7.5 自动释放池的销毁时机与工作过程250

6.7.6 临时对象与事件循环中的自动释放池251

6.7.7 手动内存管理的规则总结252

6.8 自动引用计数253

6.8.1 自动引用计数概述253

6.8.2 @autoreleasepool块254

6.8.3 使用弱引用解决强引用循环255

6.9 本章小结258

第7章 Foundation框架详解259

7.1 字符串(NSString与NSMutableString )260

7.1.1 创建字符串260

7.1.2 NSString的常用功能261

7.1.3 可变字符串(NSMutableString)262

7.2 日期与时间263

7.2.1 日期与时间(NSDate )264

7.2.2 日期格式器(NSDateFormatter)265

7.2.3 日历(NSCalendar)与日期组件(NSDateComponents)267

7.2.4 定时器(NSTimer )268

7.3 对象复制270

7.3.1 copy与mutableCopy方法270

7.3.2 NSCopying与NSMutableCopying协议271

7.3.3 浅复制与深复制274

7.3.4 setter方法的复制选项276

7.4 Objective-C集合概述277

7.5 数组(NSArray与NSMutableArray)278

7.5.1 NSArray的功能与用法278

7.5.2 对集合元素整体调用方法282

7.5.3 对NSArray进行排序284

7.5.4 使用枚举器遍历NSArray集合元素285

7.5.5 快速枚举(for-in)286

7.5.6 可变数组(NSMutableArray)287

7.5.7 NSArray的KVC与KVO289

7.6 集合(NSSet与NSMutableSet)290

7.6.1 NSSet的功能与用法290

7.6.2 NSSet判断集合元素重复的标准293

7.6.3 NSMutableSet的功能与用法295

7.6.4 NSCountedSet的功能与用法297

7.7 有序集合(NSOrderedSet与NSMutableOrderedSet)298

7.8 字典(NSDictionary与NSMutableDictionary)299

7.8.1 NSDictionary的功能与用法300

7.8.2 对NSDictionary的key排序303

7.8.3 对NSDictionary的key进行过滤305

7.8.4 使用自定义类作为NSDictionary的key306

7.8.5 NSMutableDictionary的功能与用法307

7.9 谓词308

7.9.1 定义谓词308

7.9.2 使用谓词过滤集合310

7.9.3 在谓词中使用占位符参数311

7.9.4 谓词表达式语法313

7.10 本章小结315

第8章 文件I/O316

8.1 使用NSData与NSMutableData317

8.2 使用NSFileManager管理文件和目录318

8.2.1 访问文件属性和内容319

8.2.2 创建、删除、移动、复制320

8.2.3 查看目录包含的内容321

8.3 使用NSPathUtilities.h管理路径322

8.4 使用NSProcessInfo获取进程信息324

8.5 使用NSFileHandle处理文件IO326

8.6 使用NSURL读取网络资源328

8.7 使用NSBundle处理项目相关资源329

8.8 对象归档330

8.8.1 使用NSKeyedArchiver归档330

8.8.2 实现NSCoding协议332

8.8.3 使用NSData完成自定义归档335

8.8.4 使用归档实现深复制337

8.9 本章小结338

第9章 iOS应用开发入门339

9.1 从iOS项目开始340

9.1.1 iOS项目包含的文件340

9.1.2 Interface Builder简介341

9.1.3 添加控件343

9.1.4 修改控件属性344

9.1.5 UIView支持的属性346

9.1.6 UILabel支持的属性348

9.2 MVC350

9.2.1 程序入口和应用程序代理350

9.2.2 理解iOS的MVC354

9.2.3 掌握UI ViewController控制器355

9.3 事件机制357

9.3.1 程序获取控件的两种方式357

9.3.2 事件处理的三种方式363

9.4 代码控制UI界面370

9.4.1 不使用界面设计文件开发UI界面370

实例:无界面设计文件开发iOS应用370

9.4.2 使用代码创建UI界面373

实例:动态添加、删除标签373

9.4.3 自定义UI控件376

实例:跟随手指运动的小球376

9.5 美化iOS应用379

9.5.1 定制iOS应用图标379

9.5.2 定制iOS应用的启动画面380

9.6 本章小结382

第10章 iOS界面编程之基础控件383

10.1 UI控件概述384

10.1.1 活动、静态和被动控件384

10.1.2 UIControl基类介绍384

10.2 按钮(UIButton )385

实例:丰富多彩的按钮388

10.3 文本框控件(UITextField)391

实例:用户登录界面393

10.3.1 完成输入后关闭键盘395

10.3.2 触碰背景关闭键盘396

10.4 多行文本控件(UITextVi ew )397

10.4.1 UIScrollView支持的属性398

10.4.2 使用委托对象处理UITextView事件400

实例1:通过导航按钮关闭虚拟键盘400

实例2:通过自定义键盘附件关闭虚拟键盘403

10.4.3 自定义选择内容后的菜单405

10.5 开关按钮(UISwitch )407

实例:使用开关控制“手电筒”408

10.6 分段控件(UISegmentedControl)409

实例:通过分段控件控制背景颜色410

10.7 图像控件(UIImageView )411

实例1:图片浏览器412

实例2:“幻灯片”播放器415

10.8 进度条416

10.8.1 UIProgressView416

实例:定制进度条418

10.8.2 UIActivityIndicatorView420

10.9 拖动条(UISlider )422

实例:通过施动滑块改变图片透明度423

10.10 iOS 9的警告框(UIAlertController)424

10.10.1 弹出式警告框425

10.10.2 带输入框的警告框427

10.11 日期选择器(UIDatePicker)429

10.12 选择器(UIPickerVi ew )431

10.12.1 单列选择器432

10.12.2 多列选择器435

10.12.3 相互依赖的多列选择器436

10.12.4 自定义选择器视图438

实例:“老虎机”游戏439

10.13 iOS 8新增的UIVisualEffectView442

10.14 微调器(UIStepper )445

10.15 网页控件(UIWebView)448

实例:迷你浏览器450

10.16 工具条(UIToolBar )453

实例:自定义工具条控件455

10.17 本章小结457

第11章 高级控件与特殊视图控制器458

11.1 iOS 9新增的UIStackViiew459

实例:嵌套UIStackView实现复杂界面464

11.2 表格(UITableView)与表格控制器(UITableViewController)466

11.2.1 简单表格469

11.2.2 处理单元格的选中473

实例:编辑选中行473

11.2.3 定制表格行478

实例1:继承UITableViewCe定制表格行478

实例2:使用动态单元格原型定制表格行481

11.2.4 编辑表格483

11.2.5 多分区表格以及分区索引488

11.2.6 直接使用UITableVi ewController490

11.2.7 静态单元格492

11.2.8 使用UIRefreshController刷新表格494

11.3 搜索条(UISearchBar)496

11.3.1 使用搜索条498

11.3.2 使用UISearchController500

11.4 导航条(UINavigationBar)与导航控制器(UINavigationController)503

11.4.1 使用导航条503

11.4.2 使用UINavigationController506

实例:查看、编辑图书信息508

11.4.3 使用segue导航513

11.5 segue详解517

11.5.1 使用segue控制过渡517

11.5.2 Xcode 7新增的Stortboard Reference521

11.6 网格(UICollectionView)与网格控制器(UICollectionViewController)524

11.6.1 UICollectionView的功能与用法526

11.6.2 使用UICollectionViewDelegate-FlowLayout定制布局531

实例:单元格大小不同的网格532

11.6.3 扩展UICollectionVi ewLayout定制布局534

实例:环形布局的UICollectionView535

11.6.4 多分区网格539

实例:带页眉、页脚的多分区网格539

11.6.5 直接使用UICollectionViewController543

11.7 标签条(UITabBar)与标签页控制器(UITabBarController)547

11.7.1 使用UITabBar547

11.7.2 使用UITabBarController548

11.7.3 在Storyboard中使用UITabBarController552

11.8 页控件(UIPageControl)与页控制器(UIPageViewController)553

11.8.1 UIPageControl与 UIScrollView结合使用553

11.8.2 使用UIPageViewController558

11.9 iPad应用开发562

11.10 本章小结571

第12章 管理iOS应用的运行572

12.1 iOS设备尺寸和自动旋转机制573

12.1.1 配置应用支持的方向573

12.1.2 指定视图控制器支持的方向575

12.2 旋转时重构用户界面576

12.3 自动布局580

12.3.1 自动布局的添加方式580

12.3.2 使用自动布局适应不同尺寸的屏幕585

12.3.3 使用Size Class适应屏幕旋转589

12.4 iOS应用的生命周期594

12.4.1 应用程序的状态594

12.4.2 应用程序启动过程595

12.4.3 程序入口:main函数596

12.4.4 响应中断597

12.4.5 进入后台599

12.4.6 返回前台运行600

12.4.7 应用程序中止601

12.4.8 Main Run Loop601

12.5 本章小结602

第13章 图形、图像与动画603

13.1 使用UIImage和CGImage处理位图604

13.1.1 显示动画604

13.1.2 UIImage与CGImage606

13.2 Quartz 2D绘图606

13.2.1 Quartz 2D绘图基础:CGContextRef607

13.2.2 绘制几何图形610

13.2.3 点线模式612

13.2.4 绘制文本616

13.2.5 设置阴影618

13.2.6 使用路径619

实例:绘制任意多角星623

13.2.7 绘制曲线624

实例:使用曲线绘制多瓣花朵626

13.2.8 在内存中绘图627

实例:绘图板630

13.2.9 绘制位图635

实例:扩展UIImage的功能635

13.3 图形变换640

13.3.1 使用坐标变换640

13.3.2 坐标变换与路径结合使用642

实例:雪花飘飘642

13.3.3 使用矩阵变换644

13.4 控制叠加模式647

13.5 处理填充652

13.5.1 渐变填充653

13.5.2 模式填充658

13.6 动画665

13.6.1 Core Animation动画基础665

13.6.2 使用CALayer666

13.6.3 使用CATransition控制669

过渡动画669

13.6.4 使用属性动画674

13.6.5 控制移动路径679

实例:绕圈游动的小鱼679

13.7 本章小结682

第14章 疯狂连连看683

14.1 游戏简介684

14.2 开发游戏界面685

14.2.1 开发界面布局685

14.2.2 开发游戏界面控件686

14.2.3 处理方块之间的连接线692

14.3 游戏的状态数据模型693

14.3.1 定义数据模型694

14.3.2 初始化游戏状态数据694

14.4 加载界面的图片699

14.5 实现游戏视图控制器701

14.6 实现游戏逻辑703

14.6.1 GameService分析与初步实现703

14.6.2 获取触碰点的方块704

14.6.3 判断两个方块是否可以相连706

14.6.4 定义获取通道的工具方法707

14.6.5 没有转折点的横向连接709

14.6.6 没有转折点的纵向连接710

14.6.7 有一个转折点的连接711

14.6.8 有两个转折点的连接714

14.6.9 找出最短距离723

14.7 本章小结726

热门推荐