我的运行循环观察器编写如下:
void observerCallback(CFRunLoopObserverRef observer,
CFRunLoopActivity activity, void* info)
{
println("%u", activity);
}
//-----------------------------
void InstallObserver()
{
CFRunLoopObserverRef myObserver = NULL;
int myActivities = kCFRunLoopEntry;
myObserver = CFRunLoopObserverCreate(NULL, myActivities, YES,
/* repeat */ 0, &observerCallback, NULL);
if (myObserver)
{
CFRunLoopAddObserver(CFRunLoopGetCurrent(), myObserver,
kCFRunLoopCommonModes);
}
}
每次按我的应用程序中的任何键时, observerCallback 都会被调用4次。 问题是: 如何在 observerCallback 中获取关键代码? 感谢。
答案 0 :(得分:0)
根据您对问题的评论,您需要一个本地事件监视器,AKA:
+ [NSEvent addLocalMonitorForEventsMatchingMask:handler:]