在我的应用程序中有一个webview。我已经在iOS自定义渲染器中设置了比例尺。我可以在webview加载完成之前对其进行缩放,但是当webview加载完成时没有缩放。
在webview渲染器中
WebView.LoadFinished += LoadFinished;
//...
private void LoadFinished(object sender, EventArgs e)
{
var contentSize = WebView.ScrollView.ContentSize;
var viewSize = View.Bounds.Size;
var scale = viewSize.Width / contentSize.Width;
WebView.ScrollView.MinimumZoomScale = scale*0.5 ;
WebView.ScrollView.MaximumZoomScale = scale*2 ;
}
有没有建议?
答案 0 :(得分:0)
原因:
因为您没有在html文件中引用标记元。
解决方案:
在LoadFinished方法中添加以下代码
private void LoadFinished(object sender, EventArgs e)
{
//. . .
NSString str = new NSString("var meta = document.createElement('meta');meta.content='width=device-width,initial-scale=1.0,minimum-scale=0.5,maximum-scale=2.0';meta.name='viewport';document.getElementsByTagName('head')[0].appendChild(meta);");
webView.EvaluateJavascript(str);
}
最小比例= 0.5,最大比例= 2.0
您可以在此处设置MinimumZoomScale和MaximumZoomScale的值。