什么是mvc模型:模型视图控制设计模式。
- View 与Model不直接进行交互
- 通过Controler间接实现View与model的交互
- controler接收View的用户事件更新Model
- Model更新后通知controler及时更新View用户界面
- MVC模式中常用到delegate等设计模式
窗口:
- UIwindow作为程序的窗口, 容纳界面元素
- 程序中一般只有一个window,默认由系统初始化
- 在ios中UIwindow是UIView的子类
- UIwindow的初始化方法:
[[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds]];
视图:
- UIView是基本的视图类,表示屏幕上的一块矩形区域
- UIview用于展示内容以及接收用户交互事件
- UIview可以管理其下显示的所有子视图
屏幕的坐标系
左上角是坐标原点
视图(层次,大小,位置)
- subview在显示到界面上时,是位于superview上面的越晚加入的显示在越上层,
- 可以通过tag值从父视图中找到对应的视图。
- - (UIview)viewWithTag:(NSInteger) aTag:
- frame属性是边框矩形指定视图相对与父视图坐标系统的位置和大小(相对于父视图)
- bounds属性是边界矩形,定义视图相对于本地坐标系统的位置和大小(想对于本身)
- center属性是边框矩形的中心点。
视图(属性)
- frame 相对于父视图的位置和大小
- bounds 相对于自己的位置和大小
- center 相对于父视图的中心
- transform变换属性
- window 当前View所在的window
- alpha 透明度(CGFloat)
- tag 区分的标示(NSInteger)
- layer 视图层(CAlayer)
视图(操作)
初始化 - (instancetype)initWithFrame:(CGRect)frame;
添加视图
插入视图
整理视图
移除视图
视图控制器(UIViewCOntroller)
视图控制器封装了一个UIVIew,并且管理某个页面区域的所有视图
视图控制器是模型和视图之间的媒介,模型和视图通过试图控制器来交互
多种类型的的控制器:
UIViewController,
UINavigationController,
UITabBarController
视图控制器提供了多种界面响应的方法,以及界面的生命周期方法,如监控界面的加载,旋转等。