UIMenuItem 在方法上禁用了自动选择器

UIMenuItem disabled auto selector on method

我在创建新的 UIMenuItem 并为其分配选择器时遇到问题。问题是它会在不点击的情况下自动调用其选择器。 这是我的代码:

let customMenuItem1 = UIMenuItem(title: "Salvează", action: Selector(showNote()))
    menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem]

这是菜单项的外观方法:

 override func canPerformAction(action: Selector,withSender sender: AnyObject?) -> Bool
{
    if action == Selector(showNote())
    {
        return super.canPerformAction(action, withSender: sender)
    }

    return false

}

谢谢大家

前两行代码存在错误 swift:

let customMenuItem1 = UIMenuItem(title: "Salvează", action: Selector(showNote()))
menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem]

听说我们在方法上有 Selector,这个 Selector 意味着他将自动调用方法而无需等待用户点击,为了解决这个问题,我们只能这样放置

 let customMenuItem1 = UIMenuItem(title: "Salvează", action: #selector(RulesDetailViewController.showNote))
    menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem]

因为#selector 这个参数等待用户的触摸和事件。