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

标签 ios swift uimenucontroller uimenuitem

我正在创建自定义 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 选择器中。

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

关于ios - 具有多个参数的 UIMenuContoller UIMenuItem 自定义操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36065816/

相关文章:

ios - 在核心数据中添加相关实体会删除所有其他关系吗?

ios - UITableViewCell 加载错误的 CAShapeLayer

iphone - 在自定义 View /uiview子类上实现iphone的复制/粘贴控件

ios - 单击 UITextField,我想运行一些代码

firebase - 与守护程序的连接无效

objective-c - UITEXTVIEW:获取最近在uitextview中输入的单词

iOS 在 "detail view"而不是导航 Controller 创建的 RootVIewController 处启动应用程序

ios - 使 UIButton 的 Observable isHighlighted 属性

ios - 如何在动态 TableView 内容中添加静态数据。并进行计算

ios - 如何在 Swift 中控制动画旋转方向超过 180º?