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(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。