UITextField 长按复制粘贴等框里等功能的编辑,取消
2017-03-17 本文已影响87人
东方诗空
UITextField 长按复制粘贴等框里等功能的编辑,取消
一、在开发中我们会遇到需要去掉 UITextField 长按复制粘贴等框里等功能。那么如果你的项目里面只有一个 TextField 或者 统一的 TextField。可以重写 UITextField 里面的方法 全部返回 no。就可以取消所有功能。
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"%@",NSStringFromSelector(action));
return NO;
}
长按的时候textField的执行方法打印
二、如果想要选择性的去掉一些。
那么可以 如下判断
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"%@",NSStringFromSelector(action));
if (action == @selector(cut:) || action == @selector(copy:)) {
return NO;
}
return YES;
}
三、如果你的项目里面有多个 UITextField ,而且长按的需求功能不统一,那么如果统一重写以上方法,那么势必会造成冲突,解决办法就是继承自UITextField ,在各自的子类里面去重写这个方法。
好了,一个小技巧总结,分享给大家。欢迎交流学习。
诗说百态,歌赋养心。穿石天下,永不止步。码农世界,行行生命。
—诗说穿石—