2

我正在以编程方式添加一个菜单项:

refreshItem = [[NSMenuItem alloc] initWithTitle:@"Refresh" action:@selector(refreshMenu) keyEquivalent:@""];

如果 refreshMenu 方法是实例方法,则可以正常调用,但我想将其转换为类方法: +(void)refreshMenu {}

那我怎么参考呢?

4

2 回答 2

3

您仍然会使用@selector(refreshMenu),但您会将 的 设置为-target(即)而不是实例()。NSMenuItemClass[self class]self

于 2012-08-15T17:21:13.023 回答
1

请注意,类本身就是对象:它们是元类的实例。

[menuItem setTarget:[MyClass class]];
于 2012-08-15T17:21:56.050 回答