无法将类型 'NSObject -> () -> ViewController' 的值转换为预期的参数类型 'AnyObject?'

Cannot convert value of type 'NSObject -> () -> ViewController' to expected argument type 'AnyObject?'

我正在尝试声明一个手势识别器。当我在函数中声明它时它工作正常但是当我在 class 级别声明以便它可用于多个函数时我得到错误。

Cannot convert value of type 'NSObject -> () -> ViewController' to expected argument type 'AnyObject?'

我是这样声明的:

let gestureBack = UIPanGestureRecognizer(target: self, action: Selector("wasDraggedBack:"))

如果您希望 Gesture 对象可用于多个函数,而不是在 class 级别声明其实例并像这样在 viewDidLoad 中初始化对象。

var gestureBack: UIPanGestureRecognizer?

override func viewDidLoad() {
    super.viewDidLoad()
    self.gestureBack = UIPanGestureRecognizer(target: self, action: Selector("wasDraggedBack:"))
}