在 Flutter 中,使用 webview_flutter 插件加载本地 HTML 文件,可以通过以下步骤实现:
- 添加依赖:在
pubspec.yaml 中添加 webview_flutter 插件。
- 放置 HTML 文件:将 HTML 文件放在项目的
assets 文件夹中。
- 配置资源:在
pubspec.yaml 中声明资源路径。
- 加载本地 HTML:使用
WebViewController 加载本地文件。
示例代码
- 修改
pubspec.yaml:
dependencies:
webview_flutter: ^4.4.2
flutter:
assets:
- assets/sample.html
- Flutter 代码:
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
class LocalWebView extends StatefulWidget {
@override
_LocalWebViewState createState() => _LocalWebViewState();
}
class _LocalWebViewState extends State<LocalWebView> {
late final WebViewController controller;
@override
void initState() {
super.initState();
controller = WebViewController()
..loadFlutterAsset('assets/sample.html');
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('本地 HTML')),
body: WebViewWidget(controller: controller),
);
}
}
说明
- 使用
loadFlutterAsset 方法加载 assets 目录下的 HTML 文件。
- 确保 HTML 文件路径在
pubspec.yaml 中正确声明。
- 如果需要加载包含 CSS、JS 或图片的 HTML,将这些资源也添加到
assets 中,并在 HTML 中使用相对路径引用。
这样即可在 Flutter WebView 中加载并显示本地 HTML 内容。