我有一个支持target-action机制的自定义类,但奇怪的是,在这个特定的例子中,当我试图通过执行以下命令来调用操作时:
[NSApp sendAction:action_ to:target_ from:self]它不起作用,但这种方式起作用:
[target_ performSelector:action_ withObject:self];显然,target_和action_都有有效值。
这不是什么大问题,因为我让它工作了。
我只是不明白为什么-[NSApplication sendAction:to:from:]不能工作,因为这看起来像是一个非常基本的操作。我过去一直在使用sendAction:...,没有问题,但这两个之间似乎有一些显著的区别,除了sendAction有一种机制来查找响应消息的对象(如果它的目标是nil )。
发布于 2011-09-25 21:47:42
您确定在执行sendAction:to:from:操作时NSApp不是nil吗
如果是这样,什么都不会发生。要确保NSApp是有效的对象,请至少执行一次[NSApplication sharedApplication],或者将它们组合在一起:
[[NSApplication sharedApplication] sendAction:action_ to:target_ from:self];https://stackoverflow.com/questions/7503577
复制相似问题