我有一个
WebView
小部件作为 Container
小部件的子小部件。点击 WebView
小部件内的文本框字段会使 Container
从 initState()
级别重新加载。
Container(
child:
WebView(
initialUrl: 'about:blank',
onWebViewCreated: (controller) async {
_webviewController = controller;
await _loadHtmlFromUrl(context);
},
javascriptMode: JavascriptMode.unrestricted,
onPageFinished: (finish) {
if (this.mounted && this._isLoading == true) {
setState(() {
this._isLoading = false;
});
}
},
),
);
WebView
加载了动态 Url。
用户无法在文本框中输入内容,因为点击文本框时文本框会不断重新加载。
Flutter SDK 3.3.7
WebView v2.8.0
我该如何解决这个问题? TIA
找到问题和解决方案。
上一路线(屏幕)调用
Navigator.pushAndRemoveUntil(...)
导航至 WebView
屏幕路线。我想,由于没有导航历史记录,WebView
小部件会发疯。
我更换了之前的路线(屏幕),改为拨打
Navigator.push(...)
,问题就消失了。