在Xcode中调用“(id)sender”方法

时间:2010-12-15 23:42:51

标签: objective-c methods

以下是我希望调用的方法:

- (void)myMethod:(id)sender {

我该怎么称呼它?我试过了:

[self myMethod]

^ 错误:“]”令牌之前的预期表达式。

我知道这是一个简单的问题,但我是iPhone开发新手

3 个答案:

答案 0 :(得分:12)

该方法采用一个参数,因此您必须给它一个。如果您没有要发送的发件人,只需传递nil:

[self myMethod:nil];

为方便起见,您也可以重载该方法:

// declarations
- (void)myMethod;
- (void)myMethod:(id)sender;

// implementations
- (void)myMethod { [self myMethod:nil]; }
- (void)myMethod:(id)sender { /* do things */ }

答案 1 :(得分:4)

除非您想将未指定类型的对象发送到您的方法,否则您不需要(id)sender部分:

- (void)myMethod {

}

答案 2 :(得分:1)

调用时,您需要传递一个发件人。

[self myMethod:something]

换句话说,当你调用方法时,你需要有一个参数传递。