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 命令行工具的方法,掌握使用命令行在本地搭建开发环境,使用命令行 ...
随机推荐
- SSM面试题
一.Spring面试题 1.Spring 在ssm中起什么作用? Spring:轻量级框架 作用:Bean工厂,用来管理Bean的生命周期和框架集成. 两大核心: 1.IOC/DI(控制反转/依赖注入 ...
- 第七次实验:CC2530平台上多跳通信的TinyOS编程
module P2MM { uses interface Boot; uses interface Timer<TMilli> as Timer0; uses interface Spl ...
- day08文件操作
今日内容 文件操作 内容详细 1.打开文件 1.open("作业讲解.py",mode="r",encoding="utf-8") 2.文件 ...
- [Python学习笔记] turtle库的基本使用
turtle库常用函数 引入turtle模块 import turtle turtle的绘图窗体 #setup()设置窗口大小及位置#setup()可省略turtle.setup(width,heig ...
- 命令生成所有数据库表模型以及 CRUD
将下列代码写到文件复制到项目 console\controller 目录下: <?php namespace console\controllers; use Yii; use yii\cons ...
- Java 内部类的作用
1.内部类可以很好的实现隐藏 一般的非内部类,是不允许有 private 与protected权限的,但内部类可以 2.内部类拥有外围类的所有元素的访问权限 3.可是实现多重继承 4.可以避免修改接口 ...
- LOJ 2551 「JSOI2018」列队——主席树+二分
题目:https://loj.ac/problem/2551 答案是排序后依次走到 K ~ K+r-l . 想维护一个区间排序后的结果,使得可以在上面二分.求和:二分可以知道贡献是正还是负. 于是想用 ...
- Spring Boot Admin 的使用
Spring Boot 版本: 1.5.20 一.Spring Boot Admin Server 1.在pom.xml中增加 <dependency> <groupId>or ...
- TCP 选项RST
1.RST介绍 RST表示reset复位,用于异常情况下关闭连接. 发送RST包关闭连接时,不必等缓冲区的包都发出去,直接就丢弃缓冲区中的包. 而接收端收到RST包后,也不必发送ACK包来确认. 2. ...
- select大表报错
MySQL查询大表报错 MySQL执行select操作时候,如果执行查询的表的数据量比较大,就会报错error code 2013.或者报错已杀死,并直接退出MySQL客户端.如下所示: mysql& ...