具有多个参数的 UIMenuContoller UIMenuItem 自定义操作?

UIMenuContoller UIMenuItem custom action with multiple parameters?

我正在创建自定义 UIMenuItem 并将其添加到共享 UIMenuController 的 menuItems 数组:

let menuItemCustom = UIMenuItem(title: "Custom action", action: "customAction:")
UIMenuController.sharedMenuController().menuItems = [menuItemCustom]

然后我在 canPerformAction 函数中启用标准 copy 操作和我的自定义操作:

func canPerformAction(action: Selector, withSender sender: AnyObject?) -> Bool {
    return action == "copy:" || action == "customAction:"
}

传递给我的自定义操作的参数是 UIMenuController:

func customAction(menuController: UIMenuController) {

}

有没有办法将其他东西作为参数传递,或者有多个参数?当我尝试做这样的事情时:

"customAction::"

我的自定义操作被忽略了。

"customAction:" 等操作被包装到 Objective-C 选择器中。

您不能通过选择器传递额外的参数。