我刚刚尝试在Swift项目中导入名为DDHotKey的Objective库,但在某些情况下它不起作用。
以下是我所做的步骤:
。
#ifndef project_name_bridge_h
#define project_name_bridge_h
#import "DDHotKey-master/DDHotKeyCenter.h"
#endif现在,它编译了以下代码:
var hotKeyCenter = DDHotKeyCenter.sharedHotKeyCenter()但是当我试图调用这个对象的方法时,我得到了一个错误:
hotKeyCenter.registerHotKeyWithKeyCode(34, modifierFlags: 0, task: (NSEvent) {
println("str")
})调用中缺少参数“action”的参数参数
虽然有两种方法,而且我使用的方法不同:
- (DDHotKey *)registerHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags target:(id)target action:(SEL)action object:(id)object;
- (DDHotKey *)registerHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags task:(DDHotKeyTask)task;为什么?我做错了什么?我怎么才能修好它?
提前谢谢。
发布于 2015-04-01 13:39:44
闭包语法不正确。我想你的意思是:
hotKeyCenter.registerHotKeyWithKeyCode(34, modifierFlags: 0, task: { _ in
println("str")
})如果类型推断可以解决问题,那么_ in可能是不必要的,但我怀疑您需要它。然而,领先的(NSEvent)不是正确的Swift语法。
https://stackoverflow.com/questions/29392155
复制相似问题