首先从UITextField继承一个子类并重写以下方法:canPerformAction:withSender:
方法1:
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action ==@selector(paste:)) {
//禁止粘贴
returnNO;
}
if (action ==@selector(select:)) {
// 禁止选择
returnNO;
}
if (action ==@selector(selectAll:)) {
// 禁止全选
returnNO;
}
return [super canPerformAction:action withSender:sender];
}
方法2:
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender {
UIMenuController *menuController = [UIMenuController sharedMenuController];
if (menuController) {
[UIMenuController sharedMenuController].menuVisible = NO;
}
returnNO;
}
本文介绍如何通过创建 UITextField 的子类并重写 canPerformAction 方法来禁用文本框内的复制、粘贴、选择及全选等功能。提供两种实现方式,一种是直接返回 NO 来阻止默认行为,另一种则是通过 UIMenuController 控制上下文菜单的可见性。
1万+

被折叠的 条评论
为什么被折叠?



