美文网首页首页投稿(暂停使用,暂停投稿)
一点一点看苹果官方文档(一)--UIViewController

一点一点看苹果官方文档(一)--UIViewController

作者: 喜相逢v5 | 来源:发表于2016-07-08 17:33 被阅读90次

UIViewController可以分为两类:

1.Content(内容)—(UIViewController)管理自身viewConroller的视图内容

A content view controller manages all of its views by itself

2.Container(容器)—(UINavigationController

and UITabbarViewController)管理自身viewController的视图内容,以及viewControllers和viewControllers的RootView ,不管理viewControllers的内容

A container view controller managesits own views plus the root views from one or more of its child view controllers.The container does not manage the content of its children. It manages only theroot view, sizing and placing it according to the container’s design

A.content例子

ViewController强引用rootViewrootView强引用subviews

普遍的做法是:使用outlets使用其他的views,controller会储存这些views的引用,在你加载storyboard的时候会关联到实际的view

outlets(待填坑)Outlet 

B.container例子

容器controller管理者她的尺寸和子视图的位置,不管理内容

他的子controllers管理者他们视图实际的内容

ManagingViewLayout(待填坑)Managing View Layout 

The split view controller manages the overallsize and position of its child views, but the child view controllers manage theactual contents of those views.

职责

a.数据调度


viewController是data(数据)和views(视图)的中间者,它起中间人作用(媒人),主要是负责提供data给view和将view内容传回给data

the view controller has references to your data and to the views used topresent that data. Moving data back and forth between the two is yourresponsibility

应该dataobjects处理自身逻辑应该最大化的确保数据结构的完整性,viewcontroller验证views传过来的信息是dataobjects需要的格式,但是必须最小化viewController管理实际的数据。

使用UIDocument对象是一个方法来管理数据是他与你的viewController分离。

UIDocument(待填坑)UIDocument 

b.用户交互

(用户响应链responder objects)处理用户事件

responder objects(待填坑)Responder object

viewController很少直接处理用户事件,一般都是views处理自己的事件,然后将他们处理的结果关联到delegate或者target action(一般是viewController)

delegate(待填坑)Delegation 

action methods(待填坑)Target-Action 

HandlingUser Interactions(待填坑)Handling User Interactions 

EventHandling Guide for iOS(待填坑)About Events in iOS 

c.资源管理

viewController会管理它的views和objects的内存。当内存吃紧的时候会释放没用的内存。

d.自适应性

viewcontroller自适应views的展示,以来适配不同的iphone机型或者iPad,而不是针对不同的设备提供不同的view.

自动布局适应不同的机型Auto Layout(待填坑)The Adaptive Model 

附苹果官方链接地址:



相关文章

网友评论

    本文标题:一点一点看苹果官方文档(一)--UIViewController

    本文链接:https://www.haomeiwen.com/subject/refrjttx.html