网站重定向后如何关闭WebView

时间:2019-07-11 08:17:28

标签: android ios flutter webview

一旦当前页面开始重定向您,我需要关闭flutter_webview_plugin中包含的WebViewScaffold。

我当前的方法是让插件提供一个监听器onUrlChanged,并在URL更改后立即将其关闭。

@override
  void initState() {
    super.initState();
    webview.onUrlChanged.listen((str) {
      if (str.contains('google.com')) {
        Navigator.pop(_webViewContext);
      }
    });
  }

BuildContext _webViewContext;
  final webview = FlutterWebviewPlugin();

@override
  Widget build(BuildContext context) {
    return Builder(
      builder: (BuildContext context) {
        _webViewContext = context;
         return WebviewScaffold(
           allowFileURLs: true,
           withJavascript: true,
           withLocalStorage: true,
           withLocalUrl: true,
           appBar: AppBar(title: Text('Payment')),
           url: 'www.example.com',
         );
       }
       }
    );
  }

但是,这会延迟一些时间,例如在实际调用侦听器并关闭WebView之前,要显示新网站(例如1或2秒)。

0 个答案:

没有答案