flutter 入口文件配置路由+加载页面
入口文件配置路由
1、路由信息
-- 加载页面 ,通常用于显示新的内容或者广告,加载完成之后进入主页面
-- 主页面 /app
2、配置页面 main.dart
main.dart
- // main 入口文件
- import 'package:flutter/material.dart';
- import './app.dart';
- import './loading.dart';
- // 应用程序入口
- void main() => runApp(MaterialApp(
- debugShowCheckedModeBanner: false, //去除右上角的Debug标签
- title: '测试',
- // 自定义主题
- theme: mDefaultTheme,
- // 添加路由
- routes: <String, WidgetBuilder>{
- "/app": (BuildContext context) => new App(), //主页面
- },
- // 首页
- home: new LoadingPage(), //加载页面
- ));
- // 自定义主题
- final ThemeData mDefaultTheme = new ThemeData(
- primaryColor: Colors.green,
- scaffoldBackgroundColor: Color(0xFFebebeb),
- cardColor: Colors.green);
/// 首先配置了1个路由,然后就开始显示home页面(加载页面)
3、加载页面loading.dart
loading.dart
- import 'package:flutter/material.dart';
- import 'dart:async';
- // 加载页面
- class LoadingPage extends StatefulWidget {
- @override
- _LoadingState createState() => new _LoadingState();
- }
- class _LoadingState extends State<LoadingPage> {
- @override
- void initState() {
- super.initState();
- // 加载页面停顿3s
- new Future.delayed(Duration(seconds: 3), () {
- print("loading.....");
- Navigator.of(context).pushReplacementNamed("/app");
- });
- }
- @override
- Widget build(BuildContext context) {
- // TODO: implement build
- return new Center(
- child: Stack(
- children: <Widget>[
- Image.asset(
- "images/loading.png",
- fit: BoxFit.cover,
- )
- ],
- ),
- );
- }
- }
- ///加载页面,显示图片3s后就开始跳转到主页面/app
// 图片需要在pubspec.yaml里面配置
4、主页面 app.dart
app.dart
- import 'package:flutter/material.dart';
- // 应用页面使用有状态Widget
- class App extends StatefulWidget {
- @override
- AppState createState() => AppState();
- }
- class AppState extends State<App> {
- @override
- Widget build(BuildContext context) {
- // TODO: implement build
- return Scaffold(
- body: new Center(
- child: new Text(
- '主页面',
- textAlign: TextAlign.center,
- style: new TextStyle(
- color: Colors.red[500],
- fontSize: 24.0,
- fontWeight: FontWeight.bold
- ),
- ),
- ),
- );
- }
- }
/// 主页面
5、效果图
1、打开设备
2、点击开始
3、安装完成后进入加载页面
4、加载图片3s后,进入主页面
效果比较简单,所以用的截图,复杂的以后可以考虑gif图更直观。
flutter 入口文件配置路由+加载页面的更多相关文章
- jquery加载页面的方法
jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别. 1.$(function(){ $("#a&q ...
- jquery加载页面的方法(页面加载完成就执行)
jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别. 1.$(function(){ $("#a&qu ...
- [转]jquery加载页面的方法(页面加载完成就执行)
jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别. 1.$(function(){ $("#a&q ...
- ZK 最少限度加载页面js文件
官方文档说明: ZK Developer's Reference文档,章节为Minimize Number of JavaScript Files to Load,按照文档步骤执行,最后需在 web. ...
- 本地修改配置hosts文件解决Github加载慢问题
本地修改配置hosts文件解决Github加载慢问题 手动方式 hosts 文件在每个系统的位置不一,详情如下: Windows 系统:C:\Windows\System32\drivers\etc\ ...
- 如何使用 require.js ,实现js文件的异步加载,避免网页失去响应,管理模块之间的依赖性,便于代码的编写和维护。
一.为什么要用require.js? 最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了.后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载.下面的网页代 ...
- webpack4 单入口文件配置 多入口文件配置 以及常用的配置
单入口文件配置 webpack.config.js const path = require('path'); const HtmlWebpackPlugin = require('html-webp ...
- ExtJS 4.1 TabPanel动态加载页面并执行脚本【转】
ExtJS 4.1 TabPanel动态加载页面并执行脚本 按照官方示例,可以动态加载页面,可是脚本不执行,于是查SDK.google,发现scripts需要设置为true,于是设置该属性,整个代码如 ...
- vue第七单元(vue的单文件组件形式-单文件组件的加载原理-vue-cli构建的开发环境以及生命周期)
第七单元(vue的单文件组件形式-单文件组件的加载原理-vue-cli构建的开发环境以及生命周期) #课程目标 掌握安装 vue-cli 命令行工具的方法,掌握使用命令行在本地搭建开发环境,使用命令行 ...
随机推荐
- python 测试登录接口只返回response200的问题
但是使用postman测试是有json串的 后来发现postman传参是用的raw格式,raw的格式相当于json 而这里的data其实是form-data格式,需要用json的格式
- 软件安装配置笔记(三)——ArcGIS系列产品安装与配置(补档)(附数据库连接及数据导入)
在前两篇安装配置笔记之后,就忘记把其他安装配置笔记迁移过来了,真是失误失误!趁现在其他文档需要赶紧补上. 目录: 一.ArcMap 二.ArcMap连接数据库并导入数据 三.Arcgis Pro 四. ...
- 当进行服务端渲染的时间,某些npm包可能会调用document,window这些对象而导致报错
1.在didmount里面使用require引入 require.ensure([], (require) => { this.setState({ picker: require('./Pic ...
- day08文件操作
今日内容 文件操作 内容详细 1.打开文件 1.open("作业讲解.py",mode="r",encoding="utf-8") 2.文件 ...
- ASP.NET+MVC+EntityFramework快速实现增删改查
本教程已经录制视频,欢迎大家观看我在CSDN学院录制的课程:http://edu.csdn.net/lecturer/944
- 解决MOFH免费空间cpanel面板大文件无法解压的情况
解决办法: 解压大文件,重新压缩为tar格式的压缩格式,这样可以更小,而且也可以在cpanel面板解压,记得使用filezilla软件上传文件,在cpanel的网页界面不要刷新,一刷新就不可以解压大文 ...
- Windows操作系统线程调度耍起来
Windows等常用操作系统都不是实时性操作系统,所谓不是实时性,意思是你写的程序放在这个操作系统上面运行,当程序需要睡眠2秒时,你的程序睡眠的可能不是2秒,而是2秒后能变为可调度状态,但是如果系统程 ...
- servlet_4
过滤器入门 过滤器的概念及执行基本流程 过滤器的使用场景 过滤器的实现及基本配置 过滤器链 过滤器链的配置 使用注解的方式无法保证过滤器链的执行顺序,所以只能使用web.xml的配置 按照出现在web ...
- SMD 自动点料机维修
SMD 自动点料机维修 这个工具是一个好帮手,但是过完年回来发现坏了. 设置了数量不会自动停,按停止键没有反应,一定要按打印键才能停止. 这可愁死我了. 正常情况下开机设置好数量,然后开始点数,点到数 ...
- linux的使用以及linux服务器应用的部署
一.Linux(rehat.centos.ubuntu...)基础知识 上午: putty软件连接linux服务器: [root @ foundation2 ~ ] # 用户名 ...