flutter 加载html字符串
时间: 2023-11-13 14:02:34 浏览: 161
可以使用 Flutter 中的 `WebView` 组件加载 HTML 字符串。以下是一个简单的例子:
首先,需要在 `pubspec.yaml` 文件中添加 `webview_flutter` 依赖:
```yaml
dependencies:
flutter:
sdk: flutter
webview_flutter: ^2.0.13
```
然后,在需要加载 HTML 字符串的页面中,添加 `WebView` 组件:
```dart
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
class HtmlPage extends StatelessWidget {
final String htmlString;
const HtmlPage({Key? key, required this.htmlString}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('HTML Page')),
body: WebView(
initialUrl: 'data:text/html;charset=utf-8,${Uri.encodeComponent(htmlString)}',
),
);
}
}
```
在上面的代码中,`WebView` 组件的 `initialUrl` 属性设置为 `data:text/html;charset=utf-8,${Uri.encodeComponent(htmlString)}`,其中 `htmlString` 是要加载的 HTML 字符串。
需要注意的是,这种方式只适用于简单的 HTML 字符串,如果需要加载复杂的 HTML 页面,建议使用 `flutter_html` 或 `flutter_widget_from_html_core` 等第三方库。
阅读全文