我正在使用webview_flutter。
无论如何,我可以在应用启动时预加载一个Webview小部件, 并在应用中多次重复使用相同的小部件?
WebView webview = buildWebview();
Widget getWebview() {
return webview;
}
Widget buildWebview() {
return WebView(
key: GlobalKey(),
onWebViewCreated: (WebViewController webViewController) {
print("WebView is Created");
},
...
);
}
这是我尝试过的方法,但是看来WebView是在屏幕上显示小部件时创建的,而不是在应用程序启动时创建的。 当我再次调用getWebview()时,将再次创建WebView。
答案 0 :(得分:0)
好主意和想法。
您实际上可以做到
在main.dart文件中调用此类。这将使该应用在每次启动时都以您首选的网络视图启动该应用。
要重复使用该类,请一次又一次创建另一个类并加载此webview。 然后调用或导入并在需要时使用此类
答案 1 :(得分:0)
如果要在启动时预加载所有页面,则可以在声明indexed stack
的类中使用TabBar
。
包裹尸体,并如下所述调用所有相应页面:
Widget build(BuildContext context) {
return
Scaffold(
body:IndexedStack(
index: _selectedIndex, children: _children,
),),}