Keress&基本对象,NSView是否必需?

时间:2016-03-18 14:13:04

标签: objective-c cocoa nsevent

所以这是我的代码,但对我来说这似乎过于简单了,这可能就是为什么它不能抓住用户按键,因为我的这个迷你项目的目的是:

AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);

我已经读过,如果没有NSView,可以捕获用户输入,虽然这可能会让它变得更容易吗?我想通过自己的命令行程序创建一个全局热键。

1 个答案:

答案 0 :(得分:2)

您可以使用以下NSEvent方法:

+ (id)addLocalMonitorForEventsMatchingMask:(NSEventMask)mask
                                   handler:(NSEvent * _Nullable (^)(NSEvent *))block

要监控关键事件,您应该提供NSKeyDownMask | NSKeyUpMask作为NSEventMask

请参阅Apple documentation regarding monitoring events

Answers to this question也可能对您有用,但它们涵盖了系统范围的keyDown事件,而不是您的应用程序本地事件。