私の iPhone アプリでは、View Controller で Web ビューを使用しています。画面を長押しすると、いくつかの選択がWebビューに表示され、「コピー」と「キャンセル」ボタンのあるアクションシートが表示される場合があります
これを削除するには?
私の iPhone アプリでは、View Controller で Web ビューを使用しています。画面を長押しすると、いくつかの選択がWebビューに表示され、「コピー」と「キャンセル」ボタンのあるアクションシートが表示される場合があります
これを削除するには?
このコードを使用して選択を無効にすることができます
[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none'; document.body.style.KhtmlUserSelect='none'"];
Webページで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
.css を使用している場合は、これらを適切なスタイルに追加できます
*.noselect {
-webkit-user-select:none;
-webkit-touch-callout:none;
}