Delete 5. 常见的Controller概览.md

This commit is contained in:
Yurk
2021-11-12 19:16:11 +08:00
committed by GitHub
parent fa0494c483
commit 97da9618c4

View File

@@ -1,61 +0,0 @@
# 常见的Controller概览
## 主视图控制器 View Controller
在前面的任务中我们打开Storyboard即可看到主视图控制器 View Controller这是一种最基本、最常见的视图控制器。例如当我们需要实现Table View的功能时我们可以在控件库中添加 Table View插件于 View Controller中也可以添加Scroll View于 View Controller中以实现页面滚动。View Controller更像是一张空白的A4纸我们可以在上面书写任何想要的内容。
在本章的学习过程中,请确保您的视图控制器中的一个处于`Is Initial View Controller`状态,这样您的程序在运行时才不会崩溃。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/ViewController.png" alt="ViewController" style="zoom: 33%;" />
## Table View Controller
前文我们已经通过Table View控件实现了表格单元。事实上控件库中提供了一种简易的实现方式Table View Controller直接添加相应控制器即可该Controller与Table View完全一致你可以直接在右侧信息栏中设置相关属性。
如果把View Controller比作空白的A4纸那么在View Controller上添加Table View控件相当于在A4纸上画满一条一条的格线——这当然是一种办法但我们常常还有另外的一种简易方法直接使用带格线的笔记纸。Table View Controller正是这种带格线的笔记纸。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Table View Controller.png" alt="Table View Controller" style="zoom: 50%;" />
## Page View Controller
某乎的首页界面就是一个Page View ControllerPage View并不是在底部的控制栏中进行切换你可以看到即使在相同的Tab Bar Item中我们也可以对页面进行左右切换这正是Page View Controller的用处。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/page1.PNG" alt="page1" style="zoom: 20%;" /> <img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/page2.PNG" alt="page2" style="zoom:20%;" />
在Xcode中我们可以使用Page控件进行实现当然也可以使用Page View Controller来“一劳永逸”地解决Page切换问题。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Page View Controller.png" alt="Page View Controller" style="zoom:50%;" />
## Navigation Controller
你可能并不清楚Navigation Controller究竟指的是什么但是你一定用过且见过Navigation Controller。例如在手机的设置中任何一个界面都是一个Navigation它常常与带Cell的Table View一起出现
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/navigation bar.PNG" alt="navigation bar" style="zoom: 25%;" />
上图中,`主屏幕``设置` 回退button都是Navigation Controller上的一部分。
![Navigation Controller](/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Navigation Controller.png)
## Tab Bar Controller
上面的Page View Controller提供了一种在页面内进行切换的方式。然而以微信为例如果我们要实现不同页面的切换我们需要点击屏幕下端的item进行切换。Tab Bar Controller正是实现该功能的控制器。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/tab bar item.jpg" alt="tab bar item" style="zoom: 33%;" />
在Xcode中添加Tab Bar Controller会直接出现三个视图控制器当然我们可以手动添加更多分别是Tab Bar Controller主控制器与两个Item实现我们可以在右侧的属性栏中手动选择每个Item对应的图标、文字当然也可以设置更多的属性你可以自行探索。
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Tab Bar Controller.png" alt="Tab Bar Controller" style="zoom:50%;" />
## Collection Controller
除了上述视图控制器外还有一种常见的视图控制器Collection Controller这是一种展览、罗列内容相关的Controller。例如一些电子杂志app会将近几期发行本以矩阵形式罗列一些音乐app也会以这种方式罗列自己的唱片集合。iPhone中的`图书` 功能就是Collection Controller的一种
<img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Collection.PNG" alt="Collection" style="zoom: 15%;" /> <img src="/Users/mac/Desktop/iOSdev/Task01基础插件与功能/img/Collection View Controller.png" alt="Collection View Controller" style="zoom: 40%;" />
熟悉这些基本的视图控制器可以帮助我们在实际开发过程中设计出更符合逻辑的app后面我们会在这些控制器上进行操作以实现各种不同的内容。