如何从 iOS 中的 UIMenuController 中删除默认的 UIMenuItem?

发布于 2024-11-09 06:26:50 字数 90 浏览 0 评论 0原文

我想从 UIMenuController 中删除一些默认的 UIMenuItem 对象,例如“剪切”、“复制”等。

怎么办呢?

谢谢。

I want to remove some default UIMenuItem objects like "Cut", "Copy", etc, from the UIMenuController.

How to do that ?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

留蓝 2024-11-16 06:26:50

对显示菜单的视图进行子类化(例如 UIWebViewUITextView)并覆盖 -canPerformAction:withSender: 以返回 NO 用于您不想出现的菜单项。

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
    if (action == @selector(copy:)) {
        return NO;
    }
    else {
        return [super canPerformAction:action withSender:sender];
    }
}

Subclass the view that's presenting the menu (eg. UIWebView, UITextView) and override -canPerformAction:withSender: to return NO for the menu items you don't want to appear.

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
    if (action == @selector(copy:)) {
        return NO;
    }
    else {
        return [super canPerformAction:action withSender:sender];
    }
}
黑白记忆 2024-11-16 06:26:50
class TextView: UITextView {
    override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
        if action == #selector(copy(_:)){
            return true
        }
        else{
            return false
        }
    }
}

在 Swift 4 中,

0

正如彼得·斯图尔特所说:
对显示菜单的视图(例如 UITextView)进行子类化

,然后覆盖 func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool

对于您不想显示的菜单项返回 false。

class TextView: UITextView {
    override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
        if action == #selector(copy(_:)){
            return true
        }
        else{
            return false
        }
    }
}

In Swift 4 ,

0

As Peter Stuart said:
Subclass the view that's presenting the menu (eg. UITextView)

then override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool

return false for the menu items you don't want to appear.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文