Objective-C:如何调用实例方法

Nae*_*ard 3 iphone xcode objective-c

我需要调用一个我定义为的方法:

-(IBAction)next:(id)sender{ 
...

}
Run Code Online (Sandbox Code Playgroud)

我想打电话给它 -[UIViewController viewDidload]

如何以编程方式调用此方法?

ken*_*ytm 9

[self next:nil];
Run Code Online (Sandbox Code Playgroud)
  • self是接收消息的对象,假设-next:在同一类中定义-viewDidLoad.
  • next: 是消息的名称(方法).
  • 由于你不使用sender,传递参数nil,意思是"没有".

如果-next:在App委托中定义但-viewDidLoad在某些视图控制器中,则使用

[UIApplication sharedApplication].delegate
Run Code Online (Sandbox Code Playgroud)

引用应用代表.所以声明变成了

[[UIApplication sharedApplication].delegate next:nil];
Run Code Online (Sandbox Code Playgroud)