Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 在缩放iOS上调整WKWebView高度_Html_Ios_Iphone_Webview_Wkwebview - Fatal编程技术网

Html 在缩放iOS上调整WKWebView高度

Html 在缩放iOS上调整WKWebView高度,html,ios,iphone,webview,wkwebview,Html,Ios,Iphone,Webview,Wkwebview,我有一个表视图,其中每个单元格都包含一个HTML内容的WKWebView。最初,内容的大小符合规定的宽度和高度 我想做的是允许用户放大和缩小WKWebView,同时调整单元格视图的高度 为了提供一些上下文,我所做的是将Javascript(WKUserScript)附加到WKWebView及其包含的脚本中 window.onload = function () { window.webkit.messageHandlers.sizeNotification.postMessage({wid

我有一个表视图,其中每个单元格都包含一个HTML内容的WKWebView。最初,内容的大小符合规定的宽度和高度

我想做的是允许用户放大和缩小WKWebView,同时调整单元格视图的高度

为了提供一些上下文,我所做的是将Javascript(WKUserScript)附加到WKWebView及其包含的脚本中

window.onload = function () {  
 window.webkit.messageHandlers.sizeNotification.postMessage({width: 
document.body.scrollWidth, height: document.body.scrollHeight});  
}  
这将在加载HTML内容时,向符合WKScriptMessageHandler的UIViewController发送名为“sizeNotification”的消息。该消息包含scrollHeight,我使用它通过调整高度约束来设置WKWebView的框架

我还保存了scrollHeight值,这将在以后很重要

用户放大WKWebView后,将调用委托方法ScrollViewDiEndZooming,该方法包含WKWebView的scrollView的当前缩放信息。我将WKWebView的帧的新高度约束常量设置为

webViewHeightConstraint.constant = initialHeight * scale  
WKWebView的高度会增加,因为我使用了动态调整单元格大小,所以表格单元格高度也会相应调整

直到缩放比例达到接近1.0的值 如果该值高于此值,则WKWebView/scrollView中的内容底部会有白色填充

我怀疑这与正在更改的WebView框架的宽度/高度比有关,因为如果WebView的初始高度大于内容高度,也会发生这种情况。另一个例子是,如果您在Safari中打开一个内容高度为300px的网页,但您将窗口向外伸展,使其高度为100px,则底部会出现空白(或设置为任何值)

我的问题是,是否有解决白色底部填充问题的方法?如果您在iOS上查看邮件中的电子邮件线程,您可以放大和缩小电子邮件,并相应调整单元格高度