gpt4 book ai didi

objective-c - 报告小于屏幕的 WebView 的设备宽度

转载 作者:行者123 更新时间:2023-12-02 22:10:39 26 4
gpt4 key购买 nike

我在我的一个 View Controller 中嵌入了一个 WebView 。它有一个 600x800 的矩形。好像当我发出一个 url 请求时,它告诉网络服务器它是 768px 宽,这是整个 ipad 的纵向宽度。

我们在 HTML header 中设置了 width=device-width,因此它返回一个 768x#### 页面并导致 web View 水平滚动,因为我的 webview 的 rect 小于 768。

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />

我如何设置这个 webview 以便它向 web 服务器报告正确的(较小的)宽度?

更新

我确实发现一些代码集在 webViewDidFinishLoad 中设置了 HTML 中的宽度并且它确实有效,但是有没有更好的方法来做到这一点?看起来像黑客。

NSString *jsCmd = @"var viewport = document.querySelector('meta[name=viewport]');";
jsCmd = [jsCmd stringByAppendingFormat:@"viewport.setAttribute('content', 'width=%i, initial-scale=1.0, user-scalable=1');", (NSUInteger)_webView.frame.size.width];
[_webView stringByEvaluatingJavaScriptFromString:jsCmd];

谢谢

最佳答案

跳过在元标记中给出宽度值。

<meta name="viewport" content="initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />

关于objective-c - 报告小于屏幕的 WebView 的设备宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15367487/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com