iphone - 如何从 UIWebview 中删除选择?

标签 iphone ios objective-c xcode cocoa-touch

<分区>

在我的 iPhone 应用程序中,我在 View Controller 中使用 Web View 。 当我按住屏幕时,一些选择会出现在 webview 上,有时会出现一个带有“复制”和“取消”按钮的操作表

如何删除它?

enter image description here

最佳答案

您可以使用此代码禁用选择

[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none'; document.body.style.KhtmlUserSelect='none'"];

如果您在网页中使用 Jscript,那么这可以解决问题

[webView stringByEvaluatingJavaScriptFromString:@"window.getSelection().removeAllRanges();"];

如果你想禁用复制粘贴那么这可以解决问题

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{    
    if (action == @selector(copy:) ||
        action == @selector(select:)||
        action == @selector(paste:)||
        action == @selector(cut:)) 
    {
        return NO;
    }
    return [super canPerformAction:action withSender:sender];
}

 webView.userInteractionEnabled=NO; // in case you need to disable whole UIWebView

关于iphone - 如何从 UIWebview 中删除选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15271375/

上一篇:android - 确定移动设备是否在移动的飞机上?

下一篇:ios - 链接器错误 undefined symbol

相关文章:

iphone - 一个 TableView 中有许多不同的 UITableViewCells

ios - 核心数据如何正确设计

ios - 如何使用内置麦克风输入和蓝牙输出

ios - 为什么 UIActionSheet 在呈现时是透明的?

ios - 异步数据下载程序中断

ios - 如何从另一个 iPhone 应用程序启动 MobileIron Web@Work 应用程序?

ios - UIView 中的 safeAreaInsets 在 iPhone X 上为 0

iphone - 如何在分组的 UITableView 单元格上使用自定义背景?

ios - 等待直到收到 NSNotification

iphone - 在后台无法获取位置更改通知