2

我对选择器的使用比较陌生,所以我在玩它,我不想将任何对象传递给选择器,而是它的目的只是告诉类更新自己。我将它们声明为任何其他方法,但只有当它接受参数时才起作用,这是为什么呢?

//This works    
- (void) updateButtonImageState:(id)object;
// Calling it
[cell performSelector:@selector(updateButtonImageState:) withObject:@"object"];

-

//This crashes  
//Declaring the selector
- (void) updateButtonImageState;
// Calling it
[cell performSelector:@selector(updateButtonImageState:)];
4

1 回答 1

3

您不应该在选择器名称的末尾使用冒号:

[cell performSelector:@selector(updateButtonImageState)];
于 2013-07-07T09:22:43.487 回答