具有多个参数的 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 选择器中。
您不能通过选择器传递额外的参数。
我正在创建自定义 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 选择器中。
您不能通过选择器传递额外的参数。