我可以在我的移动应用程序中使用 javascript 执行代码和库。我使用 webview_flutter 来做到这一点。但我不想在我的 UI 中显示 webview。我只想在隐藏 webview 的情况下执行库。我怎么能在 flutter 中做到这一点?
最佳答案
我找到了解决我自己问题的方法。我改用 webview_flutter_plus: ^0.1.1+9 和具有适当属性的 Visibility 小部件。可以在下面的代码 fragment 中看到。
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Webview counter: ' + scounter),
),
body: Column(
children: <Widget>[
Visibility(
visible: false,
maintainState: true,
child: SizedBox(
height: 1,
child: WebViewPlus(
onWebViewCreated: (controller) {
this._webViewController = controller;
controller.loadUrl("files/test.html");
},
onPageFinished: (url) {
_webViewController.getHeight().then((double height) {
print("height: " + height.toString());
setState(() {
_height = height;
});
});
},
javascriptMode: JavascriptMode.unrestricted,
javascriptChannels: <JavascriptChannel>[_counterx()].toSet(),
),
),
),
Text("Webview above"),
],
),
floatingActionButton: FloatingActionButton(
child: const Icon(Icons.add),
onPressed: () {
_webViewController.evaluateJavascript('reset()');
},
),
);
}
关于javascript - 如何在移动应用程序中隐藏 flutter 的 webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62858028/