Flutter 在颤振中等待Webview加载页面的解决方案显示加载

Flutter 在颤振中等待Webview加载页面的解决方案显示加载,flutter,Flutter,我得装货。我过去经常这样做。它在加载时损失了几秒钟。我想显示加载视图,直到Webview完成加载页面。我的想法是使用堆栈和加载视图来代替webview。但我不知道在webview完成后如何删除加载视图。有什么解决办法吗 Widget loadTradingView() { return Container( color: Colors.black, height: Get.width, child: Stack(children: [

我得装货。我过去经常这样做。它在加载时损失了几秒钟。我想显示加载视图,直到Webview完成加载页面。我的想法是使用堆栈和加载视图来代替webview。但我不知道在webview完成后如何删除加载视图。有什么解决办法吗

 Widget loadTradingView() {
    return Container(
      color: Colors.black,
      height: Get.width,
      child: Stack(children: [
        loadingView(),
        WebView(
          javascriptMode: JavascriptMode.unrestricted,
          onWebViewCreated: (webController) {
            _loadHtmlFromAssets(webController);
          },
          onPageFinished: (str) {
           
            print('done');
          },
          onPageStarted: (str) {
            print('start');
          },
        ),
      ]),
    );
  }

只需在有状态小部件中使用webview并调用
setState
即可显示/隐藏加载程序。示例代码:

类WebViewWidget扩展StatefulWidget{
WebViewWidget({Key}):超级(Key:Key);
@凌驾
_WebViewWidgetState createState()=>\u WebViewWidgetState();
}
类_WebViewWidgetState扩展状态{
var_加载=错误;
@凌驾
小部件构建(构建上下文){
返回容器(
颜色:颜色,黑色,
高度:Get.width,
子:堆栈(子:[
如果(\u加载)加载视图(),//显示/隐藏加载程序取决于[\u加载]标志
网络视图(
javascriptMode:javascriptMode.unrestricted,
onWebViewCreated:(网络控制器){
_loadHtmlFromAssets(网络控制器);
},
onPageFinished:(str){
打印(“完成”);
设置状态(){
_加载=假;
});
},
onPageStarted:(str){
打印(“开始”);
设置状态(){
_加载=真;
});
},
),
]),
);
}
}