Chinaunix首页 | 论坛 | 博客
  • 博客访问: 260660
  • 博文数量: 63
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1860
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-07 14:41
文章分类

全部博文(63)

文章存档

2015年(2)

2014年(61)

我的朋友

分类: iOS平台

2014-06-28 15:02:24

目标


常见的视图控制器


视图控制器的功能


iOS中的MVC


创建一个多视图应用程序


1、常见的视图控制器


UIViewController


视图控制器的父类


每个视图控制器都有一个主视图


UINavigationController


树状层次结构上下导航


页面顶部,高度44的一个横条


UITabBarController


带有一个标签栏


可以管理多个视图控制器


UITabelViewController


简化了表格的使用


    

UIImagePickerController


从内置相册中选择图片,图片选择器


可以在相册层次中导航


2、视图控制器的功能


功能


管理视图的显示,对事件做出响应


充当用户界面和应用程序数据模型之间的协调者


显示


loadView         开始加载视图


viewDidLoad      视图加载结束


viewWillAppear   视图即将显示


viewDidAppear    视图已经显示


viewWillDisappear视图将要消失


viewDidDisappear  视图已经消失


响应方向变化


shouldAutorotateToInterfaceOrientation是否支持旋转


willRotateToInterfaceOrientation:duration:旋转前干什么


willAnimateRotationToInterfaceOrientation:duration


didRotateFromInterfaceOrientation: 旋转后干什么


处理低内存情况


内存不足的时候需要处理系统通知


     didReceiveMemoryWarning


3iOS中的MVC


功能划分


模型:


保存应用程序数据的类


视图:


窗口、控件和其他用户可以看到


并能与之交互的元素的组成部分


控制器:


将模型和视图绑定在一起


确定如何处理用户输入的应用程序逻辑


原则


Controller可以直接和Model通信


Controller也可以直接和View通信


ModelView之间永远不能直接通信


iOS中的ViewController的通信是透明和固定的


主要通过outletaction实现


View负责静态的显示对象,由Controller的接口决定其内容显示


ViewdelegatedataSource一般就是Controller


Controller负责为View翻译和格式化Model的数据


Model使用通知或回调等方式分发数据更新信息,7鬼523Controller可以有选择的监听自己感兴趣的信息



View也可以监听广播信息,但一般不是Model发出的信息


一个完整的App就是很多MVC的集合


4、创建一个多视图应用程序


完成一个  具有两个界面的程序,每个界面中有一个按钮,点击后切换到另外一个界面。


主要操作


(0)新建一个空的 ios工程


(1)创建根视图控制器和nib文件--RootViewController


(2)修改应用程序委托,启动打开RootViewController.xib


(3)编写RootViewController.h,添加<切换>按钮的事件处理


(4)修改MainWindow.xib


(5)编写SwitchViewController.m


(6)实现内容视图

阅读(841) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~