Flutter中如何加载并预览本地的html文件的方法
直接进入主题,大概步骤如下
在assets创建需要访问html文件,如下
这里创建一个files文件夹,专门来放这些静态html文件.
在pubspec.yaml中配置访问位置
assets: -assets/images/ -assets/files/
在pubspec.yaml添加webview_flutter插件依赖
webview_flutter:^0.3.15+1 //具体版本请查看官网
进入实际的代码操作
import'dart:convert';
import'package:flutter/material.dart';
import'package:flutter/services.dart';
import'package:webview_flutter/webview_flutter.dart';
classAgreementPageextendsStatefulWidget{
@override
_AgreementPageStatecreateState()=>_AgreementPageState();
}
class_AgreementPageStateextendsState{
WebViewController_webViewController;
StringfilePath='assets/files/agreement.html';
@override
Widgetbuild(BuildContextcontext){
returnScaffold(
appBar:AppBar(title:Text('享你来服务条款')),
body:WebView(
initialUrl:'',
javascriptMode:JavascriptMode.unrestricted,
onWebViewCreated:(WebViewControllerwebViewController){
_webViewController=webViewController;
_loadHtmlFromAssets();
},
)
);
}
_loadHtmlFromAssets()async{
StringfileHtmlContents=awaitrootBundle.loadString(filePath);
_webViewController.loadUrl(Uri.dataFromString(fileHtmlContents,
mimeType:'text/html',encoding:Encoding.getByName('utf-8'))
.toString());
}
}
最终预览的效果如下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。