我的 assets
目录中有一个 .html
文件。
如何在 Flutter 中显示/渲染它?
最佳答案
Flutter 团队 的包昨天发布了:
webview_flutter
如何加载本地资源:
将文件添加到项目并更新您的 pubspec:
//...
assets:
//...
- assets/yourFile.html
//...
在您的小部件中:
child: FutureBuilder<String>(
future: LocalLoader().loadLocal(),
builder: (context, snapshot) {
if (snapshot.hasData) {
// return Text("${snapshot.data}");
return WebView(
initialUrl: new Uri.dataFromString(snapshot.data,
mimeType: 'text/html')
.toString(),
// maybe you Uri.dataFromString(snapshot.data, mimeType: 'text/html', encoding: Encoding.getByName("UTF-8")).toString()
javascriptMode: JavascriptMode.unrestricted,
);
} else if (snapshot.hasError) {
return Text("${snapshot.error}");
}
return CircularProgressIndicator();
},
),
从文件中加载文本:
class LocalLoader {
Future<String> loadLocal() async {
return await rootBundle.loadString('assets/yourFile.html');
}
}
关于dart - 如何显示 HTML Assets 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45428388/
相关文章:
string - 如何在本地保存用户名并在每个页面 flutter 中显示
dart - 如何在 Flutter 中清除 AnimatedList 中的所有项目
flutter - 如何在 flutter 中为下拉弹出窗口设置动态高度
listview - ListView中如何维护widget的状态?
firebase - 持久化用户身份验证 Flutter Firebase
android-studio - Flutter Emulator 连接到服务协议(protocol
dart - ListView.builder 在 flutter 中逐项滚动