我想在uiwebview中禁用'copy',而不是'select'选项。我该怎么做呢?这是因为我在我的JavaScript中使用window.getSelection()来选择用户选择并对其进行一些处理。 “复制”uimenucontrolleritem和打开的“复制”功能不是必需的,并且会混淆我的应用程序的用户。
答案 0 :(得分:0)
取自https://stackoverflow.com/a/6614465/how-do-you-really-remove-copy-from-uimenucontroller
的答案首先,您的UIWebView需要来自UIWebView的子类。在XCode中转到文件 - >新的 - > File ...并添加一个名为“MyUIWebView”的新Objective-c类,并使其成为UIWebView的子类。
在MyUIWebView.m文件中添加以下内容
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action == @selector(copy:))
return NO;
else if (action == @selector(select:))
return YES;
return [super canPerformAction:action withSender:sender];
}
从此处将您的课程链接到包含您的UIWebView的viewcontroller,并浏览您的代码并将所有UIWebView实例替换为MyUIWebView。
刚刚在ios 6.1模拟器上测试过它似乎有效。