【发布时间】:2011-04-01 15:32:07
【问题描述】:
在我的应用程序中,我想禁用 UIWebView 对象显示的内容的复制/粘贴/剪切。为此,我创建了一个 UIWebView 子类并覆盖了- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 方法:
#pragma mark - UIResponderStandardEditActions
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
if (action == @selector(copy:) ||
action == @selector(paste:)||
action == @selector(cut:)) {
return _copyCutAndPasteEnabled;
}
return [super canPerformAction:action withSender:sender];
}
现在用户不能再进行这样的操作,但是 UIWebView 仍然显示“选择矩形”,如下图所示:
注意:UIWebView 中显示的内容不是 HTML 页面。我正在显示使用以下文件从文件加载的文档文件(PDF、DOC、PPT):
NSURL *fileURL = [NSURL fileURLWithPath:<document file path..>];
NSURLRequest *fileRequest = [NSURLRequest requestWithURL:fileURL];
[<uiwebView> loadRequest:fileRequest];
还有什么方法可以禁用/隐藏这个选择矩形功能吗?
[]s,
【问题讨论】:
-
除非您 100% 确定没有其他人提供相同(或相似)的内容,否则此“功能”只会使人们远离您的应用。
-
@Franci Penov:我可以想到很多用户不希望选择指针出现的情况。事实上,当我阅读某些内容并缓慢滚动(按住手指、阅读、拖动、最终选择但想要滚动)时,它经常会破坏我的用户体验。
-
@Franci:我 100% 肯定没有其他人会提供这样的内容。正在创建该应用程序以显示仅限于某些公众的内容。这个“功能”是客户的要求(否则我当然不会为此烦恼。)@Kalle:我完全同意你的意见。
标签: iphone ipad uiwebview selection uiresponder