objective-c - 不需要在 header 中声明的 ios 和 obj-c 方法

标签 objective-c ios uipickerview

我在 Lynda.com 上查看一些关于 iphone 开发的视频。

这个人正在向一个选择器添加自定义数据,但是为了添加数据他没有在头文件中声明方法。他在文档中检查他需要哪些方法,并将这些方法声明复制粘贴到他的 Controller 类中。

例如这个方法

-(int) numberOfComponentsInPickerView: (UIPickerView *) pickerView

为什么我们不需要在头文件中声明这些方法?

如果这些方法属于选择器类,为什么我们要在 Controller 类中声明它们而不是简单地在选择器 IBOutlet 实例中调用它们?

TIA

最佳答案

当您在 header 中声明您遵循某个协议(protocol)时,您实质上是在说您同意实现该协议(protocol)中定义的方法。 我敢打赌他在标题中添加了类似这样的内容:

<UIPickerViewDataSource>

这意味着他正在实现 UIPickerViewDataSource 协议(protocol)。

因此,通过实现 UIPickerViewDataSource 协议(protocol),您暗示了这些方法,因此,它们不需要原型(prototype)化。

关于objective-c - 不需要在 header 中声明的 ios 和 obj-c 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6514185/

相关文章:

ios - 以编程方式设置 segue 标识符

iphone - 在 xcode 中将动态大小设置为 UILabels?

ios - 呈现 View Controller 时 UILabel 未加载/丢失

ios - 如何禁用特定文本字段上的键盘但允许选择器 View 作为输入 Swift?

iphone - NSDateFormatter dateFromString 返回 nil

c++ - 从 Objective-C 移植到 C++ 的最佳方式是什么?

objective-c - 如何删除缓存目录中的内容?

ios - 了解 SpriteKit : Moving Sprites

IOS - 触摸 UIPickerView 时关闭键盘

ios - UIPickerView选择指示器问题