我真的需要在Android和iOS上制作一个WebView,它会对静态html产生自动高度。我研究过,我发现WebView没有这个功能。因此,我尝试实现一些本机库,并再次为iOS工作,但不适用于Android。此外,我发现了一些主题如何将javascript注入html并获取高度值,然后为WebView动态设置它。但是,这些脚本适用于iOS,但不适用于Android。
我尝试了这些解决方案,但它们不适用于Android,即使我为Android WebView启用了javascript。我认为注入的javascript不会在Android上执行,即使我像这样配置了WebView:
<WebView
html={html}
javaScriptEnabled={true}
injectedJavaScript="document.body.scrollHeight;"
scrollEnabled={false}
onNavigationStateChange={this._updateWebViewHeight}
automaticallyAdjustContentInsets={true}
style={{height: this.state.webViewHeight}}
/>
这是截图,我从onNavigationStateChange打印出事件对象,一个来自Android,另一个来自iOS,他们没有相同的字段:(请帮忙。谢谢
Screenshot for Android emulator and iOS emulator with printed event object
答案 0 :(得分:0)
var HTMLWebView = require('react-native-html-webview');
<HTMLWebView
html = {htmlContent}
makeSafe = {true}
autoHeight = {true}/>