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 ,在各自的子類里面去重寫這個方法。
好了,一個小技巧總結,分享給大家。歡迎交流學習。
詩說百態,歌賦養心。穿石天下,永不止步。碼農世界,行行生命。
—詩說穿石—