objective-c - 使用冒号 : or not with selectors

标签 objective-c selector colon

我想知道:选择器名称不带冒号 @selector(mySelector) 或带冒号的 @selector(mySelector:) 有什么区别?

如:

UIBarButtonItem *addButton = [[UIBarButtonItem alloc]initWith... 
                                                       target:self
                                                       action:@selector(addAction:)];

我找不到另一个没有冒号的例子,但我很确定我已经看过其中的一些。

最佳答案

当且仅当方法接受参数时,方法名称后需要冒号。

无函数参数:

-(void)addAction {}

// Use ...@selector(addAction)...

有参数:

-(void)addAction:(id)info {}

// Use ...@selector(addAction:)...

关于objective-c - 使用冒号 : or not with selectors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7310392/

相关文章:

ios - 移动UIButton位置,动画

android - EditText 背景不工作

swift - '#selector' 的参数不引用 Swift 按钮目标中的 '@objc' 方法、属性或初始值设定项

ios - 使用 NSString 为标签设置颜色

ruby-on-rails - ruby 参数后面的冒号是什么意思?

javascript - 从 UIWebView 中知道 YouTube 视频何时开始播放

objective-c - UIVIew endEditing :YES doesnt hide the keyboard

ios - 如何在@selector( objective-c )中传递变量?

function - Lua:冒号、 'self' 和函数定义与调用

batch-file - Windows 批处理语法 - 变量名称中冒号的含义