flutter html 加载_Flutter开发:项目加载本地html文件的步骤
Flutter开发会遇到各种各样的技术,而且flutter开发带来了新的“技术革命”,解放了iOS单一开发和Android单一开发所带来的巨大成本问题,一套flutter代码可以适用两种平台,既节约成本又提高了开发效率。Flutter开发现在是App开发的首选技术,那么本篇博文分享一下Flutter开发中在项目中加载本地html文件并显示的方法。
本篇博文案例只介绍使用flutter的webview加载项目本地的HTML文件,其他方式的HTML加载这里不再介绍。加载本地HTML的步骤,具体如下所示:
1、在项目工程里面新建一个存放HTML的文件夹;
2、鼠标选中新建的文件夹,然后点击右键,根据下拉菜单栏选择“在Finder中显示”,打开文件夹;
3、把桌面的HTML文件拖入到新建的“resource”文件中;
4、项目resource文件夹中显示HTML文件,就说明拖入成功了;
5、最后直接在具体的使用地方加载flutter的webview加载本地的HTML文件;
附webview.dart文件的全部代码,如下所示:
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:webview_flutter/webview_flutter.dart';
class WebViewPage extends StatefulWidget {
@override
_AgreementPageState createState() => _AgreementPageState();
}
class _AgreementPageState extends State {
WebViewController _webViewController;
String filePath = 'images/resource/user_.html';
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("用户协议"),
centerTitle: true,
),
body: WebView(
initialUrl: '',
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (WebViewController webViewController) {
_webViewController = webViewController;
_loadHtmlFromAssets();
},
)
);
}
› _loadHtmlFromAssets() async {
String fileHtmlContents = await rootBundle.loadString(filePath);
_webViewController.loadUrl(Uri.dataFromString(fileHtmlContents,
mimeType: 'text/html', encoding: Encoding.getByName('utf-8'))
.toString());
}
}
以上就是本章全部内容,欢迎关注三掌柜的微信公众号“iOS开发by三掌柜”,三掌柜的新浪微博“三掌柜666”,欢迎关注!
三掌柜的微信公众号:
三掌柜的新浪微博:
flutter html 加载_Flutter开发:项目加载本地html文件的步骤相关推荐
- vue 项目如何读取本地json文件数据
在项目根目录有一个static文件夹目录,将所需要的json文件放在该static目录下,使用axios发起get请求获取对应的json文件数据 import axios from 'axios' / ...
- 解决IDEA加载多个项目(模块)时图片文件资源调用不出来的问题,new ImageIcon()图片相对路径加载失败的问题
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.分析问题 二.解决步骤 1.采用绝对路径 2.改良相对路径 前言 提示:这里可以添加本文要记录的大概内容: IDE ...
- flutter 微信语言选择_flutter实战项目,教你使用flutter打造微信app页面!
flutter_wechat
- 直播、点播系统开发项目总结(本地视频、抓包视频、直播推流、网络直播、平台搭建等相关问题点记录)
项目需求: 1.客户端实现各种格式的直播源兼容问题(组播.单播下常见直播地址格式皆可播放),以及直播分类.播放记录等: 2.客户端实现视频分类(单个视频可属于多个分类下).多格式兼容.本地数据库播放缓 ...
- Scrapy-Item Loaders(项目加载器)
Item Loaders:http://doc.scrapy.org/en/latest/topics/loaders.html Item Loaders(中文版):https://scrapy-ch ...
- 小乌龟提交本地的文件夹下多个项目
小乌龟提交本地的文件夹下多个项目 小乌龟提交本地的文件夹下多个项目 环境:win8.1 64bit 这里需要说明一下,网上也有很多绿色版免安装的,今天这里主要还是介绍安装版的是如何安装的,方便参考和学 ...
- ant design pro(一)安装、目录结构、项目加载启动【原始、以及idea开发】
一.概述 1.1.脚手架概念 编程领域中的"脚手架(Scaffolding)"指的是能够快速搭建项目"骨架"的一类工具.例如大多数的React项目都有src,p ...
- Python的IDE:基于Eclipse/MyEclipse软件的PyDev插件配置python的开发环境(不同python项目加载不同版本的python)—从而实现Python编程图文教程之详细攻略
Python的IDE:基于Eclipse/MyEclipse软件的PyDev插件配置python的开发环境(不同python项目加载不同版本的python)-从而实现Python编程图文教程之详细攻略 ...
- flutter 页面加载动画_Flutter撸一个加载动画
目标 先上效果图: 目标.gif 是不是感觉跟ProgressDialog创建出来的一毛一样!!! 实现思路 使用对话框 首先想到的是用Flutter自带的SimpleDialog对话框,但是想到这玩 ...
最新文章
- Linxu用户登录监测
- 让你用 Chrome 上网快到想哭:Vimium
- SpringMVC+Spring+mybatis项目搭建详细过程
- 大学学习论坛 需求分析报告.菜鸟版.多喷.看看问题所在
- 双向链表VS单向链表
- 初识 Vue(11)---(Vue 中的事件绑定)
- mysql链接压测_MySQL压测工具mysqlslap的介绍与使用
- Windows CE的存储与地址映射技术学习
- php 给图片加水印
- MyBatis入门使用方式
- Linux安装和卸载JDK8详解
- 通过黑客代号带你回顾九位世界顶尖的黑客大咖
- 7-14 电话聊天狂人
- VRP系统——路由器配置之信息中心基础
- VMware安装win7后,安装VMware Tools时报错安装程序无法继续
- FlexRay总线协议快速入门、深度剖析与应用示例
- CF1238E Keyboard Purchase
- 妹子:我都这样给你讲类加载器了,还不懂!
- 苹果电脑拷贝文件到u盘很慢_ChronoSync v4.9.1 一款文件资料数据云同步备份工具...
- Python建模常用代码
热门文章
- 【中级04】Java 虚拟机 Runtime Data Areas以及垃圾回收
- html 输入类型,HTML 输入类型(示例代码)
- 报错:libtool: Version mismatch error. This is libtool 2.4.6解决
- Android系统信息获取 之二:版本信息获取
- Sensor框架理解
- RTSP之主流安防厂家地址
- 推箱子游戏的java设计思路_用JAVA实现一个推箱子游戏
- vim 快捷键_VIM学习笔记 环绕字符编辑(surround)
- spark 算子使用类变量_Scala与Spark是天生的一对?
- java websocket_教你用纯Java实现一个网页版的Xshell(附源码)