【发布时间】:2021-01-21 16:45:31
【问题描述】:
我正在尝试在我的应用中使用 Flutter Web 视图。它正在工作,但是,我尝试启动的页面需要一些时间才能加载。因此,用户在显示内容之前会看到一个空白页面
我想一直显示微调器,直到显示页面内容
这是我尝试过的代码sn-p
body: Stack(
children: <Widget>[
WebView(
key: _key,
initialUrl: widget.selectedUrl,
javascriptMode: JavascriptMode.unrestricted,
onPageFinished: (finish) {
setState(() {
isLoading = false;
});
},
),
isLoading
? Center(
child: CircularProgressIndicator(),
)
: Stack(),
],
),
我看到了微调器,但它在显示内容之前就消失了。因此,大约有 5-8 秒的时间,用户会看到一个空的画布并且没有微调器
如何在屏幕上显示所有内容之前保持微调器?
谢谢
医生总结(要查看所有详细信息,请运行 flutter doctor -v): [✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.6 19G2021, locale en-US)
[✓] Android 工具链 - 为 Android 设备开发(Android SDK 版本 28.0.3) [✓] Xcode - 为 iOS 和 macOS 开发 (Xcode 12.0) [✓] Android Studio(3.6版) [✓] VS 代码(版本 1.49.2) [✓] 已连接设备(1 个可用)
• 未发现任何问题!
- 更新。
我调用的 URL 在显示页面之前会进行一些额外的验证。我在代码中添加了一个计时器。
不确定这是否是正确的方法
Future.delayed(const Duration(milliseconds: 9000), () {
setState(() {
isLoading = false;
});
});
【问题讨论】:
标签: flutter flutterwebviewplugin