как предварительно загрузить виджет веб-просмотра Flutter
Я использую webview_flutter.
Могу ли я предварительно загрузить виджет веб-просмотра при запуске приложения и повторно использовать один и тот же виджет в приложении несколько раз?
WebView webview = buildWebview();
Widget getWebview() {
return webview;
}
Widget buildWebview() {
return WebView(
key: GlobalKey(),
onWebViewCreated: (WebViewController webViewController) {
print("WebView is Created");
},
...
);
}
Это то, что я пробовал, но кажется, что WebView создается, когда виджет отображается на экране, а не при запуске приложения. И когда я снова вызываю getWebview(), снова создается WebView.
2 ответа
В случае, если вы хотите предварительно загрузить все свои страницы при запуске, вы можете использовать
indexed stack
в классе, где ты
TabBar
объявляется.
Оберните тело и вызовите все соответствующие страницы, как указано ниже:
Widget build(BuildContext context) {
return
Scaffold(
body:IndexedStack(
index: _selectedIndex, children: _children,
),),}
Хорошая инициатива и идея.
Вы действительно можете это сделать
В файле main.dart вызовите этот класс. это заставит приложение запускать приложение с вашим предпочтительным веб-просмотром каждый раз при запуске приложения.
А для повторного использования класса снова и снова создайте другой класс и загрузите этот веб-просмотр. Затем вызовите или импортируйте и используйте этот класс при необходимости.