我有一个方法 hideButton
-(void) hideButton:(UIButton) *button {
[button setHidden:YES];
}
并且我收到“无法将对象用作方法的参数”错误。
我希望能够在调用此方法时将按钮作为参数提供给方法
[self performSelector:@selector(hideButton:smallestMonster1)
withObject:nil afterDelay:1.0];
如何才能做到这一点?由于上述尝试不起作用。我需要能够将按钮作为参数提供,或者至少让方法知道调用哪个按钮在 1 秒后隐藏。
谢谢
最佳答案
您可以通过 withObject
参数将参数传递给选择器:
[self performSelector:@selector(hideButton:) withObject:smallestMonster1 afterDelay:1.0];
请注意,您最多可以通过这种方式传递 1 个参数。如果您需要传递更多参数,则需要为此使用
NSInvocation
类。编辑:正确的方法声明:
-(void) hideButton:(UIButton*) button
您必须将参数类型放在 () 内。你的 hideButton 方法接收指向 UIButton 的指针,所以你应该把
UIButton*
放在那里关于iphone - 执行 :@selector using a method with parameters,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3329081/