理解iOS中的MVC设计模式

理解iOS中的MVC设计模式,第1张

概述http://www.cocoachina.com/bbs/read.php?tid-48069-keyword-MVC.html Model: 代表你的应用程序是什么(不是怎么展现) Controller: 控制你的Model怎么展现给用户(UI逻辑) View: Controller的奴隶。。。 Model,Controller,View相互通讯的规则: Controller可以直接和Mode

http://www.cocoachina.com/bbs/read.php?tid-48069-keyword-MVC.html
@H_419_9@


@H_419_9@

Model: 代表你的应用@H_419_9@程序是什么(不是怎么展现)@H_419_9@



Controller@H_419_9@: 控制你的Model怎么展现给用户(UI逻辑)


VIEw: Controller的奴隶。。。


Model,Controller,VIEw相互通讯的规则:
@H_419_9@ Controller可以直接和Model通信 Controller也可以直接和VIEw通信 Model和VIEw永远不能直接通信 iOS中VIEw和Controller的通信是透明和固定的,主要通过outlet和action实现 VIEw使用Delegate接口和Controller同步信息 VIEw不直接和数据通信,使用dataSource接口从Controller处获取数据 VIEw的delegate和dataSource一般就是Controller Controller负责为VIEw翻译和格式化Model的数据 Model使用Notification & KVO的方式分发数据更新@H_419_9@信息,Controller可以有选择的监听自己感兴趣的信息。 VIEw也可以监听广播信息,但一般不是Model发出的信息 一个完整的App就是很多MVC@H_419_9@@H_419_9@的集合


例:



在一个设计良好的Cocoa MVC程序中,协调控制器对象常常“拥有”归档到nib文件的仲裁控制器。下图@H_419_9@显示了这两种控制器类型之间的关系。@H_419_9@


 


####################################################################################
####################################################################################
file's Owner:故名思议,就是这个nib文件的拥有者,由拥有者来负责load这个nib;file's Owner 表示视图控制器。用来关联 IB 中的 outlet (textfIEld, label)与实例变量(library classes 中定义)@H_419_9@的关联@H_419_9@
First@H_419_9@ Responder@H_419_9@@H_419_9@:每个程序都会有一个第一响应者,比如鼠标事件,键盘事件等,它就是对应的那个对象。比如多文档程序中,你的 menu的响应事件一般都是连接到FirstResponder中去的,因为你的主界面一般都在别的nib里面,此时的FirstResponder就是你的那个主nib的fileOwner;First Responder 表示当前响应用户触摸的屏幕上的对象@H_419_9@。在应用程序生命周期内, First Responder 在用户与屏幕交互时变化。例如,假设有一个表单。当用户触摸表单中的某个文本域时,那个文本域将成为活动文本域,并担当 First Responder 的角色。@H_419_9@
NSApplication:就是每个程序的单例NSApplication对象,你可以从中拿到event啥的等等~@H_419_9@

@H_419_9@ 关于视图层次:@H_419_9@ http://blog.csdn.net/jackiehff/article/details/6711785 @H_419_9@ 总结

以上是内存溢出为你收集整理的理解iOS中的MVC设计模式全部内容,希望文章能够帮你解决理解iOS中的MVC设计模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1065727.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存