如何从 UITextfields UIMenuController 中删除不需要的 UIMenuItems?

Posted

技术标签:

【中文标题】如何从 UITextfields UIMenuController 中删除不需要的 UIMenuItems?【英文标题】:How to remove unwanted UIMenuItems from UITextfields UIMenuController? 【发布时间】:2014-02-06 12:13:35 【问题描述】:

在我的应用程序中,我显示了一个UIMenuController,其中包含sharedelete 等菜单,用于UITableViewCell 长按手势。

完美运行,但显示菜单后,UITextfield 的默认UIMenuController 也有copypasteselect 菜单项。

如何删除这些“标准”菜单项?

【问题讨论】:

【参考方案1】:

你应该实现方法

- (BOOL)canPerformAction:(SEL)action
              withSender:(id)sender

对于您想要的操作返回 YES,对于您不想要的操作返回 NO。

【讨论】:

感谢您的回答。但旧菜单仍然来了。 你想去掉哪些菜单?【参考方案2】:

重写 UITextfield 的方法如下

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender

return NO;

【讨论】:

感谢您的回答。但旧菜单仍然来了

以上是关于如何从 UITextfields UIMenuController 中删除不需要的 UIMenuItems?的主要内容,如果未能解决你的问题,请参考以下文章

从 json 获取数据后将数据加载到 UILabels 和 UITextFields

使用 Swift 从 Core Data 中获取数据并在 UITextFields 中显示

从 UITableViewCells 更新 UITextFields 而无需重新加载数据

如何从 View 获取数据到 UITabBarController

如何在 Swift 3 中使用 UITextFields 创建开关表达式

如何引用 iOS UITextFields