首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC - Cocoa接口- Cocoa设计模式手册

MVC - Cocoa接口- Cocoa设计模式手册
EN

Stack Overflow用户
提问于 2010-05-20 17:44:43
回答 1查看 534关注 0票数 1

所以我开始读这本书:http://www.amazon.com/Cocoa-Design-Patterns-Erik-Buck/dp/0321535022

第二章介绍了MVC设计模式,并给出了需要澄清的例子。

这个简单的示例显示了一个包含以下字段的视图: hourlyRate、WorkHours、Standarthour、salary。

该示例分为3个部分: View -包含一些文本字段和一个表(该表包含员工数据列表)。

控制器-由NSArrayController类组成(包含一个MyEmployee数组)

Model -描述员工的MyEmployee类。MyEmployee类有一个方法,根据计算逻辑返回工资,属性根据视图UI控件返回。MyEmployee继承自NSManagedObject。

有几件事我是不确定的: 1.在MyEmplpyee类实现文件中,计算方法使用类似于“[self valueForKey:@" hourlyRate”floatValue];“这样的语句获取类属性。

我不太确定它是如何工作的,以及它是如何从正确的视图字段获取值的。(它是否必须与视图中的字段名称相同)。也许连接是使用接口构建器以某种方式建立的,并且没有在书中显示?

更重要的是: 2.它如何将视图从模型中分离出来?假设,正如这本书所暗示的那样,有一天我决定删除视图中的一个字段。据我所知,这意味着改变MyEmplpyee中薪水方法的工作方式(因为我们少了一个字段),并从同一个类中删除了一个属性。那么,如果更改一个反射到另一个上,如何将视图从模型中分离出来?

我想我搞错了..。有什么意见吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-20 19:08:18

  1. valueForKey:方法的实现将在here中讨论。注意,valueForKey:实际上可以直接访问NSTableView,而不需要调用任何方法。
  2. 如果您从NSTableView中删除了一列,则不必将其从模型对象类中删除。它仍然在那里,只是没有显示出来。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2872556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档