在日常开发工作中,有很多涉及密码的文本框,处于安全考虑我们一般都是不让用户使用复制和粘贴功能的,也就是长按文本框内容时禁止弹出文本复制、粘贴等菜单栏,接下来简单说一下这种需求怎么实现。
1、创建基于 UITextfield 的 BaseTextfield
2、在 BaseTextfield.m 中写入如下代码
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender { UIMenuController *menuController = [UIMenuController sharedMenuController]; if(menuController) { [UIMenuController sharedMenuController].menuVisible = NO; } return NO; }
|
3、在需要使用的类中,创建基于 BaseTextfield 的 Textfield,而此时的 Textfield 就没有了粘贴、选择以及全选的菜单栏功能,用户在输入密码时就不能再进行复制粘贴了。
微信扫一扫,向我赞赏
支付宝扫一扫,向我赞赏