目标c中是否有任何规定,以便我可以在多个对象上调用相同的选择器
像jQuery这样的东西。我引用了这个link但它要求数组中的所有对象都调用选择器 makeObjectsPerformSelector 。
例如,我有以下代码:
[_addButton setTarget:myObject];
[_deleteButton setTarget:myObject];
[_editButton setTarget:myObject];
到一行像
[_addButton, _deleteButton, _editButton setTarget:myObject];
我知道它在语法上对objective-c没有任何意义,但是有什么诀窍吗?
答案 0 :(得分:2)
我更喜欢积木。
[@[self.addButton, self.deleteButton, self.editButton] enumerateObjectsUsingBlock:^(UIButton* btn, NSUInteger idx, BOOL *stop){
btn.target = myObject;
}];
答案 1 :(得分:1)
您可以轻松地将对象放在临时数组中并使用makeObjectsPerformSelector
,如下所示:
[@[_addButton, _deleteButton, _editButton] makeObjectsPerformSelector:@selector(setTarget:) withObject:myObject]