以编程方式实例化 UIBarButtonItem 抛出缺少参数异常

Programatically instantiating UIBarButtonItem throws missing argument exception

我正在尝试在 Swift 中做一些非常简单的事情 - 实例化一个 UIBarButtonItem:

let btnImg = UIImage(named: "imgName")
let btn = UIBarButtonItem(image: btnImg, style: .Plain, target: self, action: doSomthing)

此代码导致构建失败:

Missing argument for parameter 'landcapeImagePhone' in call

根据the docs,两个函数都可用:

initWithImage:style:target:action:

init(image image: UIImage?,
    style style: UIBarButtonItemStyle,
    target target: AnyObject?,
    action action: Selector)

initWithImage:landscapeImagePhone:style:target:action:

init(image image: UIImage?,
    landscapeImagePhone landscapeImagePhone: UIImage?,
    style style: UIBarButtonItemStyle,
    target target: AnyObject?,
    action action: Selector)

如果我执行第二个初始化,我会收到以下错误:

Extra argument 'landscapeImagePhone' in call

有谁知道我可以实现我想要实现的目标的方法吗?这是 Swift / Xcode 中的错误吗?我是 运行 Xcode 6.1.1.

我已经完成了清理 (Cmd + SHIFT + K) 和构建文件夹清理 (Cmd + alt + SHIFT + K)。

如果doSomthing是一个没有参数的函数,实例化UIBarButtonItem的正确方法应该是:

   let btn = UIBarButtonItem(image: btnImg, style: .Plain, target: self, action: "doSomthing")

检查此 post 以获取有关 swift 中 Selectors 的信息: @selector() in Swift?