在项目中使用UI对象时,如何知道何时使用数据源或委托协议?

时间:2010-03-16 19:13:02

标签: objective-c datasource delegates protocols

例如UIPickerView,在我正在学习的教程中,我必须在我的项目中包含数据源和委托协议,以便pickerview工作。我怎么知道其他物体?

2 个答案:

答案 0 :(得分:2)

通常,在单个对象的文档中对此进行了解释。例如http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIPickerView_Class/Reference/UIPickerView.html

在概述部分,它解释说,“委托必须采用UIPickerViewDelegate协议”,“数据源必须采用UIPickerViewDataSource协议”

http://developer.apple.com/iphone/index.action只需在搜索框中输入您感兴趣的对象的名称,文档就会说明实现该目标所需的一切。

答案 1 :(得分:0)

需要注意的是,UIPickerViewDelegate/Datasource代表了委托设计模式(请参阅Cocoa Design Patterns),并在整个Cocoa UI层次结构中重复,作为修改对象行为而无需子类的方法。它非常优雅,较少熵,促进单一责任原则,并减少耦合。整个Cocoa都可以看到委托模式,而不仅仅是UI类,所以你可以经常看到它。

要了解其他对象,您几乎必须访问Apple开发人员中心或Xcode帮助系统中特定类的Framework Library Reference。您几乎可以假设所有数据支持的UI对象都有数据源(委托)方法,大多数UI对象都有委托方法。