You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter WebView导致其他组件无法交互的问题排查

WebView 导致上层组件交互失效问题

当在Flutter中使用WebView时,会出现一个问题:WebView会拦截所有手势和鼠标事件,导致位于它上方的组件无法响应用户交互。比如在以下示例中,将WebView放入Stack组件后,叠在WebView上方的ListView完全无法滚动。

import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

void main(List<String> args) {
  return runApp(const App());
}

class App extends StatelessWidget {
  const App({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Stack(
          children: [
            webview(),
            ListView.builder(
              itemCount: 10,
              itemBuilder: (context, index) {
                return SizedBox(
                  height: 100,
                  child: Text('Item $index'),
                );
              },
            ),
          ],
        ),
      ),
    );
  }

  Widget webview() {
    final controller = WebViewController()..loadHtmlString('''
<!DOCTYPE html>
<html>
<body>
    <h1>Hello World</h1>
</body>
</html>
''');

    return WebViewWidget(
      controller: controller,
    );
  }
}

内容的提问来源于stack exchange,提问作者Burhan Khanzada

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 06:44:55