ios - 启用UIWebView中的滚动和缩放,但禁用其他用户交互

时间:2013-05-29 14:21:18

标签: iphone ios uiwebview uiscrollview xamarin.ios

我想允许用户截取他在UIWebView中选择的特定区域的屏幕截图。为了实现这一点,我想要做的是启用缩放和拖动,但避免每个其他用户交互。

我已经没有关注他们点击的任何链接,但是我没有找到一种方法来控制javascripts调用,当他们点击smth,或者键盘的显示,如果他们点击texfield,例如。

有什么想法吗? 谢谢!

2 个答案:

答案 0 :(得分:0)

您可以在UIWebView上放置透明视图,并且只允许缩放缩放和滚动手势以覆盖UIWebView。这是我想到的第一件事。

答案 1 :(得分:0)

Psiticosis答案是实现这一目标的更简单方法,但将“透明视图”添加到文档正文中会更容易。

只需在文档正文中添加叠加层execute a script on your WebView即可。 脚本可以是这样的:

//CSS setup
var styletag = document.createElement("style");
styletag.type = "text/css";
styletag.innerHTML = '#naughty-overlay {position:fixed; height:100%; z-index:9999;}';
styletag.innerHTML += '* {-webkit-user-select:none;}';

//Create the overlay div
var overlay = document.createElement('div');
overlay.id = 'naughty-overlay';

//Append elements
document.body.appendChild(styletag);
document.body.appendChild(overlay);