为了账号安全,请及时绑定邮箱和手机立即绑定

目标C中的方法语法

目标C中的方法语法

红颜莎娜 2019-07-25 19:30:57
目标C中的方法语法有人可以为我解释这个方法声明语法吗?在此函数中,返回UIPickerView的行数。根据我的理解,Method被称为' pickerView',并返回一个NSInteger。它传入一个指向UIPickerview的指针,称为' pickerView'...首先,为什么该方法与参数名称相同?接下来有一个名为component的NSInteger参数,它告诉我们计算行的哪个组件。决定哪个是在方法体内的逻辑。什么是' numberOfRowsInComponent?它似乎描述了我们返回的值,但它位于参数的中间。- (NSInteger) pickerView:(UIPickerView *)pickerView   numberOfRowsInComponent:(NSInteger)component{     if (component == kStateComponent)         return [self.states count];     return[self.zips count];}
查看完整描述

3 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

在Objective-C中,方法的名称由声明中不是参数和类型的所有部分组成。因此,此方法的名称为:

pickerView:numberOfRowsInComponent:

该方法等同于C风格的函数,如下所示:

编辑:(感谢Jarret Hardie):

NSInteger pickerViewNumberOfRowsInComponent(UIPickerView * pickerView, NSInteger component)



查看完整回答
反对 回复 2019-07-25
?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

添加到之前的答案,我只想说Objective-C方法(或者如果您愿意的话,还有消息)具有外部内部参数名称。

所以在这种情况下:

- (NSInteger) pickerView:(UIPickerView *)pickerView 
 numberOfRowsInComponent:(NSInteger)component

numberOfRowsInComponent外部名称,从外部调用此方法时将使用的名称。

并且component是参数的内部名称,用于从方法内部引用参数。

希望能稍微清理一下。


查看完整回答
反对 回复 2019-07-25
  • 3 回答
  • 0 关注
  • 339 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信