If you saw the darkness in front of you, don't be afraid, that's because sunshine is at your back.
如果你看到面前的阴影,别怕,那是因为你的背后有阳光。
前言
文本输入框默认自带复制粘贴功能,用起来很方便。但是有些场景是禁止使用的,比如输入密码等。
乍一想UITextfield
应该有某个属性可以控制这个功能,但是一找并没有。因为长按文本框出现的 复制、粘贴、剪切 等这些其实就是UIMenuController
,要禁用这些功能还得对UIMenuController
下手。
怎么做
新建一个类继承UITextfield
,然后重写canPerformAction:withSender:
代码如下:
#import <UIKit/UIKit.h>
@interface MQTextField : UITextField
@end
#import "MQTextField.h"
@implementation MQTextField
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
UIMenuController *menuController = [UIMenuController sharedMenuController];
if (menuController) {
//直接隐藏菜单
[UIMenuController sharedMenuController].menuVisible = NO;
}
return NO;
}
@end
怎么用
正常还是用UITextfield
,哪个文本框要禁用,直接用MQTextField
,简单粗暴。